Тип лямбды в Kotlin
Тип лямбды описывают так же, как у функции:
в круглых скобках перечисляют типы аргументов,
после -> пишут тип результата.
Запись (Int) -> Int означает один
Int на входе и Int на выходе:
val double: (Int) -> Int = { x -> x * 2 }
println(double(4))
Для двух параметров в скобках два типа через запятую:
val sum: (Int, Int) -> Int = { a, b -> a + b }
println(sum(1, 2))
Если лямбда ничего не принимает, в скобках
пусто. Если не возвращает значение, справа
от стрелки стоит Unit:
val logLine: () -> Unit = {
println("ready")
}
logLine()
Объявите переменную toUpper с типом
(String) -> String и присвойте
ей лямбду, которая возвращает строку
в верхнем регистре. Выведите результат
для "kotlin".
Объявите переменную bothPositive
с типом (Int, Int) -> Boolean.
Лямбда должна возвращать true,
если оба аргумента больше 0.
Выведите результат для 2 и 3
и для -1 и 5.