Junior — Middle
Kako primeniti lambda izraz u kontekstu funkcije proširenja u Kotlinu?
sobes.tech АИ
Одговор од АИ
U Kotlinu, lambda izrazi se često koriste zajedno sa funkcijama proširenja radi poboljšanja čitljivosti i udobnosti koda. Funkcija proširenja omogućava dodavanje nove metode postojećoj klasi bez nasleđivanja.
Primer korišćenja lambda izraza u funkciji proširenja:
// Funkcija proširenja za List<Int>, koja primenjuje lambda na svaki element i vraća zbir
fun List<Int>.sumByLambda(transform: (Int) -> Int): Int {
var sum = 0
for (item in this) {
sum += transform(item)
}
return sum
}
fun main() {
val numbers = listOf(1, 2, 3, 4)
val result = numbers.sumByLambda { it * 2 } // pomnoži svaki element sa 2 i saberi
println(result) // Ispisaće 20
}
Ovde je sumByLambda funkcija proširenja za List<Int>, koja prihvata lambda izraz transform i primenjuje ga na svaki element liste.