Ruby勉強し直してみた 2

inject/reduce

たたみ込み演算なるもの… 例を見たほうが早い

numbers = [1, 2, 3, 4]
sum = numbers.inject(0) { |result, n| result + n }

ブロックの第一引数(result)には初回のみinjectメソッドの引数が入る。

2回目以降は前回のブロックの戻り値が入る。

繰り返し処理が最後まで終わると、ブロックの戻り値がinjectメソッドの戻り値になる。

チェリー本にて復習中だけども、以外と知らなかったことが多い…