什么是最简单(最好)的方法来找到一个数组的整数和在swift? 我有一个数组叫multiples我想知道这些倍数的和。
当前回答
Swift 3+一行求和对象的属性
var totalSum = scaleData.map({$0.points}).reduce(0, +)
哪里点的属性在我的自定义对象scaleData,我试图减少
其他回答
斯威夫特3.0
我也有同样的问题,我在苹果的文档上找到了这个解决方案。
let numbers = [1, 2, 3, 4]
let addTwo: (Int, Int) -> Int = { x, y in x + y }
let numberSum = numbers.reduce(0, addTwo)
// 'numberSum' == 10
但是,在我的例子中,我有一个对象列表,然后我需要转换我的列表的值:
let numberSum = self.list.map({$0.number_here}).reduce(0, { x, y in x + y })
这对我很有用。
另一种简单的方法:
let sumOfMultiples = ar.reduce(0) { x, y in x + y }
print(sumOfMultiples)
@IBOutlet var valueSource: [MultipleIntBoundSource]!
private var allFieldsCount: Int {
var sum = 0
valueSource.forEach { sum += $0.count }
return sum
}
用于嵌套参数
这也是可行的:
let arr = [1,2,3,4,5,6,7,8,9,10]
var sumedArr = arr.reduce(0, combine: {$0 + $1})
print(sumedArr)
结果是:55
Swift 3+一行求和对象的属性
var totalSum = scaleData.map({$0.points}).reduce(0, +)
哪里点的属性在我的自定义对象scaleData,我试图减少