each
a = [{b: 1}, {b: 2}, {b:3}]
a.each { |e| e[:b] }
=> [{:b=>1}, {:b=>2}, {:b=>3}]
find_all, select, filter
a = [{b: 1}, {b: 2}, {b:3}]
a.select { |e| e[:b] > 1 }
=> [{:b=>2}, {:b=>3}]
map, collect
a = [{b: 1}, {b: 2}, {b:3}]
a.map { |e| e[:b] }
=> [1, 2, 3]
filter_map
a = [{b: 1}, {b: 2}, {b:3}]
a.filter_map { |e| e if e[:b] > 1 }
=> [{:b=>2}, {:b=>3}]
reject
a = [{b: 1}, {b: 2}, {b:3}]
a.reject { |e| e[:b] > 1 }
=> [{:b=>1}]
inject
a = [1,2,3]
a.inject { |sum, e| sum + e }
=> 6
a = [{b: 1}, {b: 2}, {b:3}]
a.inject(0) {|sum,e| sum + e[:b] }
=> 6
a.inject([]) {|sum,e| sum << e[:b] }
=> [1, 2, 3]