要約 コレクションに対して 絞り込みと データ処理 をしたいときはeach_with_objectを使うと良いという話です。 詳細 Effective Rubyを読む中で、よく書きがちな以下のコードに対してinject / reduceを用いよという教えが書かれていました。 # こんなデータがあるとする。 User = Struct.new(:name, :age) users = [ User.new('user1', 21), User.new('user2', 19), User.new('user3', 23), User.new('user4', 35), User.new('user5', 10), User.new('user6', 18), User.new('user7', 24), User.new('user8', 15), User.new('user9', 21)