Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗ktPmScLF 333 of 522 menu
◀ ▶

Локальные функции в Kotlin

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

В main объявлена printLine. Вызвать ее можно только из main. На экран попадет строка "hi":

fun main() { fun printLine() { println("hi") } printLine() }

Локальная функция читает переменные main. На экран попадет 4:

fun main() { val width = 4 fun showWidth() { println(width) } showWidth() }

С уровня файла локальную функцию вызвать нельзя. Программа не соберется:

fun main() { fun innerTask() { println("done") } innerTask() } fun runApp() { innerTask() // программа не собирается }

Определите, что выведет программа:

fun main() { val city = "rome" fun showCity() { println(city) } showCity() }

Определите, соберется ли программа:

fun main() { fun helper() { println(1) } helper() } fun start() { helper() }
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить