总结一组元组

时间:2015-10-15 23:15:26

标签: arrays swift tuples reduce

我有一个像这样定义的元组数组:

var stringsWithLengthsArray:[(someString: String, someStringLength: Int)] = []

我在这个数组中添加了许多元组。我想总结数组中每个元组的someStringLength元素,并认为最好的方法是使用stringsWithLengthsArray.reduce方法,但我无法弄清楚语法。求和someStringLength元素的最佳方法是什么?

3 个答案:

答案 0 :(得分:2)

我最喜欢这种方式:

let total = stringsWithLengthsArray.reduce(0){$0 + $1.someStringLength}

答案 1 :(得分:1)

您可以使用map来获取someStringLength属性值,并使用reduce来汇总所有元素,如下所示:

let stringsWithLengthsArray:[(someString: String, someStringLength: Int)] = [("strA",2),("strB",3)]

let someStringLenghtTotal = stringsWithLengthsArray.map{$0.someStringLength}.reduce(0){$0+$1}

someStringLenghtTotal   // 5

答案 2 :(得分:1)

这是另一种解决方案。使用不reduce的{​​{1}}并直接使用.0 / .1访问者访问您的元组字段。

map
相关问题