Junior — Middle
Jak aplikovat lambda výraz v kontextu rozšiřující funkce v Kotlinu?
sobes.tech AI
Odpověď od AI
V Kotlinu se výrazy lambda často používají spolu s rozšiřujícími funkcemi ke zvýšení čitelnosti a pohodlí kódu. Rozšiřující funkce umožňuje přidat novou metodu ke stávající třídě bez dědičnosti.
Příklad použití lambda ve rozšiřující funkci:
// Rozšiřující funkce pro List<Int>, která aplikuje lambda na každý prvek a vrací součet
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 } // každý prvek vynásobit 2 a sečíst
println(result) // Vytiskne 20
}
Zde je sumByLambda rozšiřující funkcí pro List<Int>, která přijímá lambda výraz transform a aplikuje jej na každý prvek seznamu.