どうも、ちょげ(@chogetarou)です。
reduce()を使ってMap(マップ)の全ての値(value)の合計値を取得する方法を紹介します。
方法

reduce()を使ってMap(マップ)の全ての値(value)の合計値を取得するには、valuesを使います。
まず、map.values
のように、Mapのvaluesプロパティにアクセスします。
valuesプロパティからreduce{}を呼び出します。
そして、reduce{}のクロージャーに2つの引数の足し算を指定します。
val result = map.values.reduce { x,y -> x + y }
上記のreduce()は、 valuesプロパティのアクセス元のMapの値の合計を返します。
使用例
fun main() {
val numbers = mapOf(
"one" to 1,
"two" to 2,
"three" to 3,
"four" to 4,
"five" to 5
)
val result = numbers.values.reduce { x,y -> x + y }
println(result)
}
出力:
15
コメント