Функция return в Java

204
20 апреля 2018, 16:47

Как понять что надо ставить в выражении return?
Когда ставить return 0 и все return c другими выражениями?
Как определить, что нужно ставить после return и зачем?

Answer 1

Во-первых, начну с совета @SergeyGornostaev:

Нужно прочитать учебник по Java!

Их Вы можете выбрать с этого списка.

Как понять что надо ставить в выражении return?

Понять это можно из определения метода, например

public String toString() {...}

в данном случае String - это возвращаемый тип (то есть то... что Вы должны вернуть). Return statement может выглядеть следующим образом:

public String toString() {
    return "Some string";
}
public String toString() {
    return new String();
}
public String toString() {
    // Какой-то код
    return string; // здесь string - объект типа String
}

Все выражения равносильные, какое из них использовать Вам решать.

Если возвращаемый тип void, то допускается return statement без выражения или с выражением, которое также возвращает void:

public void someMethod() {
    // Какой-то код
    return;
}
public void someMethod() {
    //Какой-то код
    return otherMethod();
public void otherMethod() {
    // Какой-то код
    return;
}

Также можно возвращать тип, который расширяет возвращаемый тип или реализует его (если возвращаемый тип - интерфейс).

public Number sum(Number num1, Number num2) {...}

В данном случае можете написать:

return new Byte(...);
return new Short(...);
return new Integer(...);
return new Long(...);
return new Float(...);
return new Double(...);

В случае с интерфейсом:

public List someMethod() {...}

В данном случае можно написать:

return ArrayList();
return LinkedList();
Answer 2

Если функция возвращает результат, то после return ставится значение, которое она должна вернуть. Если результата нет, то просто return. Например, функция без результата:

public void hello() {
    System.out.println("Hello");
    return;
}

Функция возвращающая результат в виде строки:

public String sayHello(String name) {
    return "Hello, " + name;
}
Answer 3

Функция:

public String sayHello(String name) {
    return "Hello, " + name;
}

Выводим на экран то, что возвращает функция с параметром "Ivan":

System.out.println(sayHello("Ivan"));

Результатом выполнения функции будет строка на экране: Hello, Ivan

Итого, return это результат, который вернет функция.

READ ALSO
True and false after return [требует правки]

True and false after return [требует правки]

Что обозначает false или true после оператора return и в каких позициях обозначаются условия false и true

190
Сортировка по количеству лайков

Сортировка по количеству лайков

Здравствуйте, вопрос по sqlЕсть 2 таблицы в базе данных

253
Как перевести переменную в константу?

Как перевести переменную в константу?

Как перевести переменную в константу?

256
Segfault на ровном месте

Segfault на ровном месте

Доброго времени сутокПишу достаточно простую программку под Linux

280