set = (1..9).to_a
p set.inject([]) { |mem, item| mem << item * 3 if (item%2).zero?; mem }
module Enumerable
def inject_to_a
self.inject([]) { |mem, item| (res = yield(item)) ? mem << res : mem }
end
end
p set.inject_to_a { |item| item * 3 if (item%2).zero? }
grepを使う。これいい!
p set.grep(->x{ (x%2).zero? }) { |item| item * 3 }each_with_objectというものある!
p a.each_with_object([]) { |i, mem| mem << i if (i%2).zero? }
No comments:
Post a Comment