1. Оператор return
Думаєте, ви вже вивчили все про методи в Java? Де ж пак, ви ще й половини не знаєте.
Почнімо з чогось простого. Наприклад, у Java є команда (оператор) return, який дає змогу миттєво завершити виконання методу, в якому його викликано. Зовнішній вигляд команди:
return;
І все: лише одне слово return
і крапка з комою. Щойно програма виконає цю команду, робота поточного методу відразу завершиться, і продовжиться робота методу, звідки його було викликано.
Якщо return
викликати в методі main
, метод main
на цьому завершиться, а разом із ним — вся програма.
Приклад:
|
Метод fill заповнює частину переданого масиву значенням value .Частина масиву визначається індексами from і to .Якщо from менший за 0 або to більший за довжину масиву, метод відразу завершується. |
У наведеній вище програмі є метод fill
, який заповнює переданий у нього масив значенням value
, причому заповнює не весь масив, а його частину, задану індексами from
і to
.
На початку методу fill
виконується перевірка, чи коректні значення в нього передано. Якщо індекс from
менший за 0 або індекс to
більший за довжину масиву, то метод fill
на цьому завершується (викликає команду return
).
Корисна річ, цей оператор return
: він є майже в кожному методі в Java, і от чому.
2. Функції з результатом void
Пам'ятаєте, ми колись з'ясували, що є команди, а є вирази? І вираз, на відміну від команди, має значення, яке можна десь використовувати.
Отож у Java методи можуть мати значення. І це дуже добра новина: методи можуть не просто щось робити залежно від параметрів, але й, приміром, обчислити що-небудь і повернути результат обчислення.
Ви, до речі, з такими методами вже стикалися:
|
Метод abs() повертає значення типу double |
|
Метод nextInt() повертає значення типу int |
|
Метод toUpperCase() повертає значення типу String |
|
Метод copyOf() повертає значення типу int[] |
Кожен метод може повернути лише одне значення одного наперед заданого типу. Тип повернення значення визначається під час оголошення методу:
public static тип ім'я(параметри)
{
код методу
}
де ім'я
— це ім'я методу, параметри
— список параметрів методу, а тип
— тип результату, що повертається методом.
Для методів, які нічого не повертають, є спеціальний тип-заглушка — void
.
Пишете свій метод і не хочете нічого повертати в метод, звідки здійснюється виклик? Просто оголосіть тип методу void
, і проблему вирішено. Таких методів у Java теж багато.
3. Повернення результату
Як оголошувати метод із результатом обчислення/роботи ми щойно розібралися, а як же цей результат повернути з методу?
Для цього нам знову стане в пригоді оператор return
. Передавання результату з методу матиме такий вигляд:
return значення;
де return
— це оператор, який негайно завершить роботу методу. А значення
— це значення, що метод має повернути як результат у той метод, звідки відбувся виклик. Тип значення
має збігатися з типом
, зазначеним під час оголошення методу.
Приклад 1. Метод знаходить менше з двох чисел:
|
Метод повертає менше з двох чисел. Якщо a < b повернути a Інакше — повернути b |
Приклад 2. Метод дублює переданий у нього рядок n
разів:
|
Метод отримує два параметри — рядок і кількість його повторень. Створюється порожній рядок для майбутнього результату. У циклі times разівдо рядка result додаються пробіл і рядок str .Як результат метод повертає змінну result . |
Приклад 3: Метод знаходить більше з двох чисел за допомогою тернарного оператора:
|
Метод повертає більше з двох чисел. Повернути (якщо a > b , то a , інакше — b )
|
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ