这应该使用“地图”方法吗?

时间:2011-12-24 03:16:24

标签: ruby

有更优雅的方法吗?我觉得“map”应该在某处:

[
    :method_a,
    :method_b,
    :method_c
].each do |method|
    items.each do |item|
        self.send(method, item)
    end
end

2 个答案:

答案 0 :(得分:7)

是否使用mapeach完全取决于您是否希望操作返回方法应用程序结果列表(send)或不

答案 1 :(得分:3)

顺便说一句,您可以使用product方法来消除嵌套结构:

[
  :method_a,
  :method_b,
  :method_c
].product(items).map{|method, item|
  send(method, item)
}