Какой тип данных возвращает оператор return

«Какой тип данных возвращает оператор return» — вопрос из категории Java, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Оператор return возвращает значение того типа, который указан в объявлении функции. Если функция объявлена без возвращаемого типа (т.е. Unit в Kotlin или void в Java), то return ничего не возвращает (или возвращает Unit в Kotlin).

Пример в Kotlin:

fun sum(a: Int, b: Int): Int {
    return a + b // возвращает Int
}

fun printMessage(): Unit {
    println("Hello") // возвращает Unit (неявно)
}

В Java:

int sum(int a, int b) {
    return a + b; // возвращает int
}

void printMessage() {
    System.out.println("Hello"); // ничего не возвращает
}