Sobes.tech
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.