Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Объяснение максимально простыми слова return в Java

Eren Yeag9r Ученик (117), на голосовании 5 месяцев назад
Сижу два дня, не могу разобраться с return. Просто логики слова возвращать не могу понять. Объясните для тупого, только на этом застопорился
Голосование за лучший ответ
Максим Ученик (117) 6 месяцев назад
Оператор return используют для выполнения явного выхода из метода. Оператор можно использовать в любом месте метода для возврата управления тому объекту, который вызвал данный метод. Таким образом, return прекращает выполнение метода, в котором он находится.
HELPER ㅤ Мыслитель (7422) 6 месяцев назад
Что такое return?

"Return" - это команда в Java, которая возвращает значение обратно в вызывающую часть кода.

Когда использовать return?

Возвращайте значение из метода или функции, когда вы хотите, чтобы этот результат использовался в другом месте программы.

Как использовать return?

Синтаксис "return" выглядит так:

return <выражение>;
Например:

int сумма(int а, int b) {
return a + b;
}
В этом примере метод "сумма" возвращает результат сложения двух чисел a и b.

Зачем использовать return?

Передача результатов: Возвращайте результаты вычислений или обработки данных в другие части кода.
Управление потоком: Используйте return для выхода из метода или функции раньше времени, если определенные условия выполнены.
Создание повторно используемого кода: Делайте функции или методы, которые возвращают значения, чтобы их можно было использовать повторно в других частях программы.
Совет для новичков:

Возвращайте только один тип данных в каждом методе.
Не используйте return в блоке инициализации класса или конструкторе.
бабуин гибонович Оракул (50123) 6 месяцев назад
Не переживай, я постараюсь объяснить как можно проще.

### Что такое `return` в Java?

`return` в Java используется, чтобы вернуть значение из метода в то место, откуда этот метод был вызван. Представь себе метод как коробочку, которая делает что-то и, если нужно, может вернуть результат своей работы.

### Пример на простом уровне

Допустим, у тебя есть метод, который складывает два числа:

```java
 public int сложить(int a, int b) { 
int сумма = a + b;
return сумма; // Здесь мы возвращаем результат сложения
}
```

### Как это работает?

1. У тебя есть метод `сложить`, который принимает два числа `a` и `b`.
2. Метод считает сумму этих двух чисел и сохраняет результат в переменную `сумма`.
3. Ключевое слово `return` берёт значение переменной `сумма` и возвращает его туда, откуда метод был вызван.

### Как вызвать метод и получить результат?

```java
 public class Main { 
public static void main(String[] args) {
Main mainObject = new Main();
int результат = mainObject.сложить(3, 4); // Вызываем метод сложить и получаем результат
System.out.println(результат); // Выводим результат на экран
}

public int сложить(int a, int b) {
int сумма = a + b;
return сумма; // Возвращаем результат
}
}
```

### Что происходит в этом коде?

1. В методе `main` вызывается метод `сложить` с аргументами 3 и 4.
2. Метод `сложить` выполняет сложение и возвращает значение 7.
3. Возвращенное значение (7) сохраняется в переменную `результат`.
4. Значение переменной `результат` выводится на экран.

### Зачем нужен `return`?

- **Возвращает результат**: Если метод что-то вычисляет, `return` позволяет получить этот результат.
- **Завершает метод**: Когда метод встречает `return`, он сразу завершает свою работу и возвращает указанное значение.

### Пример метода без возврата значения (`void`):

Если метод ничего не возвращает, он объявляется с ключевым словом `void` и `return` не используется для возврата значения.

```java
 public void распечататьПриветствие() { 
System.out.println("Привет!");
}
```

В этом случае метод просто выполняет действие (печатает "Привет!") и ничего не возвращает.

Надеюсь, теперь стало понятнее! Если есть ещё вопросы, не стесняйся спрашивать.
Eren Yeag9rУченик (117) 6 месяцев назад
Спасибо огромное! Теперь понял. Получается ретерн, ставится, чтобы дальше никуда не шло, а только туда откуда вызывается метод, т.е действие его. Огромное спасибо, долго мучался с этим термином. Из за термина, не мог логики действия понять.
бабуин гибонович Оракул (50123) Eren Yeag9r, Да, ты правильно понял! Действительно, return не только возвращает значение, но и завершает выполнение метода. Это значит, что после return никакой код в этом методе больше не выполняется. Немного о завершении метода Если после return есть еще какой-то код в методе, он не будет выполнен. Вот пример:
бабуин гибоновичОракул (50123) 6 месяцев назад
 public int делить(int a, int b) { 
if (b == 0) {
return 0; // Если b равно 0, возвращаем 0 и метод завершает выполнение
}
int результат = a / b;
return результат; // Возвращаем результат деления
// Здесь мог бы быть еще код, но он никогда не выполнится, так как return завершает метод
}
бабуин гибоновичОракул (50123) 6 месяцев назад
Завершение метода без возврата значения (void)

Если метод ничего не возвращает, return используется просто для завершения выполнения метода. Например:
бабуин гибоновичОракул (50123) 6 месяцев назад
 public void проверитьЧисло(int число) { 
if (число < 0) {
System.out.println("Число отрицательное");
return; // Завершаем метод, если число отрицательное
}
System.out.println("Число положительное");
// Метод продолжит выполнение только если число не отрицательное
}
бабуин гибоновичОракул (50123) 6 месяцев назад
Итог

return возвращает значение из метода.
return завершает выполнение метода.
Код после return в методе не будет выполнен.

Ты справился с пониманием этого важного концепта! Если будут еще вопросы, смело спрашивай. Удачи в изучении Java!
Eren Yeag9r Ученик (117) бабуин прокофьевич, спасибо огромное за подробное объяснение!
Александр Искусственный Интеллект (301561) 6 месяцев назад
не в джаве, а в программировании вообще, всякие методы, функции, процедуры и т.п. есть кусок кода, который можно использовать много раз без нужды повторять этот код.
при вызовет метода, контроль за выполнение всей программы переходит к этому методу. и когда работа метода закончена, контроль нужно вернуть в вызывающий код...
вот команда return и делает это.
разные языки программирования пошли разными путями. где-то обходятся без этого слова, где-то этот слово не обязательно. потому и понимание смысла return стало мутным...

в той же джаве
строка
return 10;
означает не просто возврат числа 10 (что должно совпадать с возвращаемым типом метода), но и возврат контроля в вызывающий код
а в методе объявленном как void вполне можно написать
return;
и это будет работать. ведь мы никакую величину не возвращаем. только контроль.
да, всякие анализаторы кода будут гундеть на ненужность. ну и пусть гундят)))
Похожие вопросы