Sobes.tech
Junior — Middle

Kotlin'da kalitlar va qiymatlarni o'z ichiga olgan kolleksiyada barcha raqamli qiymatlarning yig'indisini qanday hisoblash mumkin?

sobes.tech AI

AIdan javob

Kotlinda, kalitlar va qiymatlari bo'lgan kolleksiyada (masalan, Map) barcha raqamli qiymatlarning yig'indisini hisoblash uchun values funksiyasidan foydalanib, qiymatlar kolleksiyasini olishingiz va keyin sum() yoki sumOf funksiyasini qo'llashingiz mumkin.

Map<Int, Int> uchun misol:

val map = mapOf("a" to 10, "b" to 20, "c" to 30)
val sum = map.values.sum()
println(sum) // 60 ni chiqaradi

Agar qiymatlar shunchaki Int bo'lmasa, balki raqamli maydonga ega obyektlar bo'lsa, sumOf dan foydalanishingiz mumkin:

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 ni chiqaradi

Shunday qilib, kalitlar va qiymatlar bilan kolleksiyadagi raqamli qiymatlarning yig'indisini hisoblash uchun, faqat qiymatlarni olish va mos keladigan yig'ish funksiyasini qo'llash kifoya qiladi.