我有2个Int类型的数组
let arrayFirst = [1,2,7,9]
let arraySecond = [4,5,17,20]
Run Code Online (Sandbox Code Playgroud)
我想添加每个数组的元素,比如arrayFirst [0] + arraySecond [0],arrayFirst [1] + arraySecond [1]等等,并将它分配给另一个数组,所以数组的结果就像
[5,7,24,29]
什么是实现这一目标的最佳实践 swift3
Raj*_*jat 16
您可以像这样添加两个数组
let arrayFirst = [1,2,7,9]
let arraySecond = [4,5,17,20]
let result = zip(arrayFirst, arraySecond).map(+)
print(result)
Run Code Online (Sandbox Code Playgroud)
let arrayFirst = [1,2,7,9]
let arraySecond = [4,5,17,20]
Run Code Online (Sandbox Code Playgroud)
首先,zip(_:_:)它们产生一个像对数组一样的序列
let zipped = zip(arrayFirst, arraySecond)
// zipped acts like [(1, 4), (2, 5), (7, 17), (9, 20)]
Run Code Online (Sandbox Code Playgroud)
然后map(_:)在元组上,并应用+运算符:
let result = zipped.map(+)
// result is [5, 7, 24, 29]
Run Code Online (Sandbox Code Playgroud)
全部一起:
let result = zip(arrayFirst, arraySecond).map(+)
Run Code Online (Sandbox Code Playgroud)