Junior — Middle
Hogyan számolhatjuk ki egy Kotlinban lévő kulcs-érték párokat tartalmazó gyűjtemény összes numerikus értékének összegét?
sobes.tech MI
Válasz az MI-től
Kotlinban, hogy kiszámítsuk egy kulcsokkal és értékekkel rendelkező kollekció (például Map) összes numerikus értékének összegét, használhatjuk a values függvényt az értékek gyűjteményének megszerzéséhez, majd alkalmazhatjuk a sum() vagy sumOf függvényt.
Példa Map<Int, Int>-hez:
val map = mapOf("a" to 10, "b" to 20, "c" to 30)
val sum = map.values.sum()
println(sum) // 60-at ír ki
Ha az értékek nem egyszerűen Int típusúak, hanem például objektumok, melyeknek van egy numerikus mezőjük, akkor használhatjuk a sumOf-t:
data class Item(val count: Int)
val map = mapOf("a" to Item(10), "b" to Item(20))
val sum = map.values.sumOf { it.count }
println(sum) // 30-at ír ki
Így a kulcsokkal és értékekkel rendelkező kollekcióban a numerikus értékek összegének kiszámításához elegendő az értékek megszerzése és a megfelelő összegző függvény alkalmazása.