reduce()

let array=[1,2,3]
let result=array.reduce(0){$0+$1}
print(result)
//resultには6が代入される

[解説]
reduce {この中で繰り返し処理される}
(繰り返し処理1周目)
まずreduce(0)の引数が$0に代入される、引数は(0)なので$0には0が入る。
そして配列の値がいつずつ順番に$1に代入される、配列arrayの中身は1,2,3なので$1には1が入る。

{$0+$1} は{0+1}なので1周目の結果は1となる。

(繰り返し処理2周目)
先程と違い$0には1周目の結果が代入される。なので$0には1が入る。
そして$1には配列の値の2が入る

{$0+$1}は{1+2}なので2周目の結果は3となる。

(繰り返し処理3周目)
もう分かったと思いますので、はしょります。
{$0+$1}は{3+3}なので3周目の結果は6となる。

最終結果 result
には6が代入される。 


余談
こんな書き方もできる
let array=[1,2,3]
let result=array.reduce(0,+)
結果は6
クオリティー低いですが、私のアプリも宜しくお願いします!
↓  ↓  ↓