运维开发网

我怎么能写一个条件:每个在ruby中更简洁?

运维开发网 https://www.qedev.com 2020-08-01 22:32 出处:网络 作者:运维开发网整理
我不确定如何在 ruby中更干净地编写这段代码?唯一不同的是迭代器. if items.respond_to?(:find_each) items.find_each do |item| output_item(csv, item) end else items.each do |item| output_item(csv, item)
我不确定如何在 ruby中更干净地编写这段代码?唯一不同的是迭代器.

if items.respond_to?(:find_each)
    items.find_each do |item|
      output_item(csv, item)
    end
  else
    items.each do |item|
      output_item(csv, item)
    end
  end
您可以使用 Object#send动态调用方法:

method = items.respond_to?(:find_each) ? :find_each : :each
items.send(method) do |item|
  output_item(csv, item)
end
0

精彩评论

暂无评论...
验证码 换一张
取 消