Ruby の認定試験を受ける後輩から Array#inject が わかりにくいという話を聞いたので 簡単にまとめてみたいと思います。 Array#inject は配列の値を合計したりするのに使える便利なメソッドです。 $ irb irb(main):001:0> [1,2,3,4].inject(0) { | sum, i | sum + i } => 10 内部的には次のような処理になります。 [1,2,3,4].inject(0) { | sum, i | sum + i } `-------, loop: 1 0, 1 0 + 1 ~~|~~ ,----------' loop: 2 1, 2 1 + 2 ~~|~~ ,----------' loop: 3 3, 3 3 + 3 ~~|~~ ,----------' loop: 4 6, 4 6 + 4 ~~|~~ `---->