Junior — Middle
Cum se aplică o expresie lambda în contextul unei funcții de extensie în Kotlin?
sobes.tech AI
Răspuns de la AI
În Kotlin, expresiile lambda sunt adesea utilizate împreună cu funcțiile de extensie pentru a îmbunătăți lizibilitatea și confortul codului. O funcție de extensie permite adăugarea unei noi metode unei clase existente fără moștenire.
Exemplu de utilizare a unei lambda într-o funcție de extensie:
// Funcție de extensie pentru List<Int>, care aplică o lambda fiecărui element și returnează suma
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 } // înmulțește fiecare element cu 2 și adună
println(result) // Afișează 20
}
Aici, sumByLambda este o funcție de extensie pentru List<Int>, care acceptă o expresie lambda transform și o aplică fiecărui element al listei.