Оператор return используется для выполнения явного возврата из метода. То есть он снова передает управление объекту, который вызвал данный метод. Как таковой этот оператор относится к операторам перехода. Хотя полное описание оператора return придется отложить до рассмотрения классов и их методов, все же кратко ознакомимся с его особенностями.
Оператор return предписывает интерпретатору Java остановить выполнение текущего метода. Если метод возвращает значение, оператор return сопровождается некоторым выражением. Значение этого выражения становится возвращаемым значением метода.
Некоторые методы объявляются как void, так как они не возвращают никакого значения. Интерпретатор Java выполняет такие методы путем последовательного выполнения операторов до тех пор, пока он не достигнет конца метода. Выполнив последний оператор, интерпретатор выполняет возврат. Однако иногда метод void должен завершиться, не дожидаясь выполнения последнего оператора. В этом случае можно использовать оператор return без выражения.
Теперь это все надо пояснить на примере, и хотя классы мы еще не проходили, я надеюсь что этот пример будет понятным, а если нет, то не страшно, путь этот материал отложится на подкорку.
Чтобы изобразить пример нам понадобятся два класса, один с методом main, другой просто класс с вызываемыми статическими методами. Если не понятно что такое статические методы, то не переживайте, это скажем ну просто вызываемые “подпрограммы”. И так код в студию:
“Главная программа” (главный класс с методом main)
В строках 8 и 10 вызывается метод vReturn, который не возвращает ни каких значений, а просто вывод, в зависимости от переданного в него значения, то или иное сообщение.
В строках с 13 по 15 вызывается метод strReturn, который возвращает разные строки в зависимости от переданного в него значения.
Передаваемые в методы значения заключены в круглые скобки.
И вызываемая “подпрогорамма” (класс с вызываемыми статическими методами)
Метод vReturn не выводит ни какого сообщения если в него передано значение больше пяти, в ином случае он выводит сообщение.
Метод strReturn возвращает в виде значения строку, содержимое которой сообщает о том больше или равен переданный параметр пяти или же он меньше пяти.
В операторе if в строках 13 и 14 не использованы фигурные скобки, так как в них нет необходимости, хотя это и повысило бы читаемость кода.
В принципе, в коде этих классов нет ни чего сложного и не понятно. Но даже если это не понятно, то скоро мы уже перейдем к изучению классов и там все прояснится.
И надеюсь вывод, который генерируют данные классы, поможет понять как работает оператор return:
Первый вызов метода vReturn был сделан с параметром 3 и поскольку он меньше 5, то было напечатано сообщение из этого метода. Второй же вызов этого метода был сделан с параметром 7 и поэтому сразу же произошел возврат из метода, так как 7 больше 5 и данный метод ни чего не напечатал.
Метод strReturn возвращает строку в зависимости от переданного в нее параметра.
ничего непонятно
ОтветитьУдалитьВозможно потому что еще пока методы не были пройдены. Читайте дальше и со временем все поймете.
УдалитьА зачем фотографу Java? Вот это точно не понятно :)
Удалитьчеловек может эрудированным хочет быть))
УдалитьС каких это пор программирование на Джаве пример "эрудированности"?
Удалить"А зачем фотографу Java? Вот это точно не понятно :)"
УдалитьАхаха :D
А так нормально объяснено, спасибо :)
Да. Совершенно понятно. Если непонятно, значит надо изучать материал ранее, чем этот.
УдалитьПошли вы все нахуй пидоры
УдалитьЖаль, что код нельзя скопировать( так бы обучение проходило быстрее...
ОтветитьУдалитьА кто мешает его скопировать из репозитария Git?
Удалитькопирование кода - плохая практика, как по мне
Удалитьлучше потратить время и напечатать, так понятней всё будет
Полностью с вами согласен
Удалитьдобрый день, а не подскажите, где можно прочитать поподробнее про методы и прочее так как про return и, правда, не очень понятно
ОтветитьУдалить