Как посчитать сумму элементов в kotlin?

Пользователь

от richard , в категории: Другие , 2 года назад

Как посчитать сумму элементов в kotlin?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от akeem , 2 года назад

@richard 

Чтобы посчитать сумму элементов в массиве или коллекции в Kotlin, можно использовать функцию sum().


Для примера, допустим у нас есть массив чисел:

1
val numbers = arrayOf(1, 2, 3, 4, 5)


Мы можем посчитать сумму элементов этого массива, вызвав функцию sum() на этом массиве:

1
2
val sum = numbers.sum()
println("Сумма элементов: $sum") // выводит "Сумма элементов: 15"


То же самое можно сделать для коллекций, например для списка чисел:

1
2
3
val numbersList = listOf(1, 2, 3, 4, 5)
val sum = numbersList.sum()
println("Сумма элементов: $sum") // выводит "Сумма элементов: 15"


Обратите внимание, что функция sum() возвращает значение типа Int для массива целых чисел или для списка целых чисел, и возвращает значение типа Double для массива чисел с плавающей точкой или списка чисел с плавающей точкой. Если вы используете функцию sum() на коллекции объектов, то вам может понадобиться определить функцию, которая будет считать сумму элементов этой коллекции, и использовать ее вместо sum().

Пользователь

от stephania , год назад

@richard 

Если у вас есть массив или список объектов и вам нужно посчитать сумму определенного поля или свойства объектов, можно использовать функцию sumBy():

1
2
3
4
5
6
data class Person(val name: String, val age: Int)

val people = listOf(Person("Alice", 25), Person("Bob", 30), Person("Charlie", 35))

val sumOfAges = people.sumBy { it.age }
println("Сумма возрастов: $sumOfAges") // выводит "Сумма возрастов: 90"


Функция sumBy() принимает лямбда-выражение, где каждый элемент коллекции передается как аргумент и возвращает значение, которое нужно суммировать. В данном примере мы суммируем все значения поля age для каждого объекта Person.