Лямбда-выражения в Kotlin представляют собой анонимные функции. Они могут быть переданы в качестве аргумента или храниться в переменной.
Ключевые моменты:
{}. Параметры указываются до стрелки ->, тело функции после. Если параметров нет, стрелка необязательна.it: Если у лямбды один параметр, его можно не объявлять явно, и он будет доступен под именем it.Примеры:
kotlin
Сравнение с анонимными функциями (более детально):
| Особенность | Лямбда-выражение | Анонимная функция |
|---|---|---|
| Синтаксис | {} | fun (...) |
| Возвращаемое значение | Последнее выражение | Явное return |
return внутри | Возвращает из родительской функции (нелокальный return) | Возвращает из самой анонимной функции (локальный return) |
Использование it | Да (для одного параметра) | Нет |
Лямбды широко используются в Kotlin, особенно с функциями высшего порядка (map, filter, forEach и т.д.), для создания лаконичного и выразительного кода. Компилятор оптимизирует их использование.