3

他の2つの配列の要素に二項演算を適用して配列を作成するSwiftの簡潔な方法はありますか?

例えば:

let a = [1, 2, 3]
let b = [4, 5, 6]
let c = (0..<3).map{a[$0]+b[$0]} // c = [5, 7, 9]
4

2 に答える 2

15

zipを使用して要素を結合する場合は、次のように参照でき+ます+

let a = [1, 2, 3]
let b = [4, 5, 6]    
let c = zip(a, b).map(+)  // [5, 7, 9]
于 2016-12-18T14:59:22.020 に答える
0

アップデート:

indices次のように使用できます。

for index in a.indices{
    sum.append(a[index] + b[index])
}
print(sum)// [5, 7, 9]

(アレクサンダーのコメントのおかげで、これはより良いです。なぜなら、elementそれ自体を扱う必要はなく、単に扱うだけだからですindex

古い答え:

列挙してインデックスを取得できます。

var sum = [Int]()
for (index, _) in a.enumerated(){
    sum.append(a[index] + b[index])
}
print(sum)// [5, 7, 9]
于 2017-01-23T15:09:51.697 に答える