如何在Kotlin语言中对数组中的元素求和?

8hhllhi2  于 2023-11-21  发布在  Kotlin
关注(0)|答案(7)|浏览(190)
package sum

fun sum(a: IntArray): Int {
  return 0
}

字符串

5t7ly7z5

5t7ly7z51#

在Kotlin中有一个内置函数来对IntArray求和

val numbers: IntArray = intArrayOf(10, 20, 30, 40, 50)
val sum = numbers.sum()

字符串
或者自己动手...

fun sumArray(array: IntArray): Int{
    var sum = 0
    for(number in array){
        sum += number
    }
    return sum
}

2vuwiymt

2vuwiymt2#

您可以直接使用sum

val sum = arrayOf(12, 33).sum()

字符串

lyr7nygr

lyr7nygr3#

你可以把它做成一条小溪

val sum = arrayOf(7, 9).fold(0) { acc, e -> acc + e }

字符串

o4tp2gmn

o4tp2gmn4#

这是我比较喜欢的解决办法

array.reduce { acc, l -> acc + l }

字符串
例如,如果你有一个对象而不是一个主数据,你可以访问它并总结

ig9co6j1

ig9co6j15#

fun sum(numbers: IntArray) = numbers.sum()

字符串

f1tvaqid

f1tvaqid6#

您也可以使用fold。其优点是数据处理更自由。
例如,如果你有嵌套数组,并且想要嵌套数组大小的总和,你可以这样做:

val totalSize = array1.fold(0) { acc, i -> acc + i.array2.size }

字符串
如果数组只有整数:

val sum = array.fold(0) { acc, i -> acc + i }

mbjcgjjk

mbjcgjjk7#

它的工作原理是这样的:

fun main() {
    val myArray = arrayOf(6, 5, 8, 2, 11, 25)
    var sum = 0
    for (number in myArray) {
        sum += number
    }
    println(sum)
}

字符串

相关问题