Ruby Ruby 中 each.do 集合遍历问题

Cger007 · 发布于 2017年07月03日 · 最后由 mlzhuyi 回复于 2017年07月04日 · 597 次阅读
96

在ruby中用each.do遍历集合列表的时候,怎么能像java中for(int i=0;i<list.size();i++)循环那样,知道i的值,也就是each.do怎么判断正在执行的是第几次

共收到 5 条回复
96

each_with_index do |r, i|

254

each_with_index , rtfm

27349
hash = Hash.new
%w(cat dog wombat).each_with_index do |item, index|
  hash[item] = index
end
hash   #=> {"cat"=>0, "dog"=>1, "wombat"=>2}
A9642e
27349sec 回复
%w(cat dog wombat).each.with_index.inject({}) do |h, (item, index)|
  h[item] = index
  h
end
19159
%w(cat dog wombat).map.with_index { |iterm, index| [iterm, index] }.to_h
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册