Функция sumOf
Функция sumOf позволяет вычислять сумму
элементов последовательности, предварительно
выполнив ее фильтрацию.
Синтаксис
Iterable<T>.sumOf(selector: (T) -> Int): Int
Iterable<T>.sumOf(selector: (T) -> Long): Long
Iterable<T>.sumOf(selector: (T) -> Double): Double
Iterable<T>.sumOf(selector: (T) -> Float): Float
Пример
Давайте найдем сумму всех четных чисел из списка:
val lst: List<Int> = listOf(1, 2, 3, 4, 5)
val res: Int = lst.sumOf { if (it % 2 == 0) it else 0 }
println(res)
Результат выполнения кода:
Int 6
Пример
Давайте найдем сумму всех чисел из списка:
val lst: List<Int> = listOf(1, 2, 3, 4, 5)
val res: Int = lst.sumOf { it }
println(res)
Результат выполнения кода:
Int 15
Пример
Давайте найдем сумму всех строк из списка, преобразовав их в числа:
val lst: List<Int> = listOf("1", "2", "3", "4", "5")
val res: Int = lst.sumOf { it.toInt() }
println(res)
Результат выполнения кода:
Int 15