我有这样的数组
let arr = [1,2,3,4,5,6,7,8,9,10]
我试过var totalSum = arr.map({$0.points}).reduce(0, +)
但没有奏效
我可以找到所有对象的总和值吗?
答案 0 :(得分:2)
您需要放弃map
& points
let arr = [1,2,3,4,5,6,7,8,9,10]
let totalSum = arr.reduce(0, +)
print("totalSum \(totalSum)")
答案 1 :(得分:0)
这是最简单/最短的数组求和方法。
Swift 3,4:
let arrData = [1,2,3,4,5]
sum = arrData.reduce(0, +)
或强>
let arraySum = arrData.reduce(0) { $0 + $1 }
Swift 2:
sum = arrData.reduce(0,combine:+)
答案 2 :(得分:0)
不使用任何内置函数。
let arr = Array(1...100)
var sum = 0
arr.forEach { (num) in
sum = sum + num
}