Junior — Middle
Може ли анонимна функция да се запази в променлива?
sobes.tech AI
Отговор от AI
Да, в Android (и в Java/Kotlin) могат да се съхраняват анонимни функции (лямбда изрази) в променливи. В Kotlin, например, анонимната функция е лямбда и може да бъде присвоена на променлива с подходящия функционален тип:
val sum: (Int, Int) -> Int = { a, b -> a + b }
println(sum(3, 4)) // 7
В Java, от версия 8 нататък, могат да се използват функционални интерфейси и лямбда изрази:
Function<Integer, Integer> square = x -> x * x;
System.out.println(square.apply(5)); // 25
Така анонимните функции могат да се съхраняват в променливи и да се предават като обекти.