Ruby勉強し直してみた 2
inject/reduce
たたみ込み演算なるもの… 例を見たほうが早い
numbers = [1, 2, 3, 4] sum = numbers.inject(0) { |result, n| result + n }
ブロックの第一引数(result)には初回のみinjectメソッドの引数が入る。
2回目以降は前回のブロックの戻り値が入る。
繰り返し処理が最後まで終わると、ブロックの戻り値がinjectメソッドの戻り値になる。
チェリー本にて復習中だけども、以外と知らなかったことが多い…