Ruby 如何将 Array ().each 中得到循环次数的语句,写的很优美?

jjxp2007 · 发布于 2012年03月27日 · 最后由 jjxp2007 回复于 2012年03月27日 · 4815 次阅读
1606

这是一个一直很困扰我的问题。当我在对数组做each do的时候,如果我想得到循环次数的计数,就会按以下这么写:

simple_array = %w[a b c]

#.......code.......#

int = 0

simple_array.each do |array|

int += 1
p "count #{int} : #{array}”

end


#.......code.......#


请教各位牛人如何能写的更佳优美?使int不出现在外层。

共收到 3 条回复
66e7cc

try:

arr.each_with_index {|item, index| ...}


96

each_with_index, 示例:

hash = Hash.new
%w(cat dog wombat).each_with_index {|item, index|
  hash[item] = index
}
hash   #=> {"cat"=>0, "dog"=>1, "wombat"=>2}

1606

收藏了,谢谢@liuzihua @xqunix

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册