在非数字数组循环中获取增量值/

时间:2014-08-12 00:33:42

标签: ruby arrays loops collections

在循环遍历顺序数字数组时,很容易获得当前循环迭代的计数。

(1..5)each do |num|
  @output[num] = num
end

但是,如果我需要循环一组对象(不是连续的数字集合),我该如何获得循环的增量值?

@objects.each do |obj|
  @output[obj] = obj.name
end

显然,索引无效。什么是ruby方法来做这里明确的目的(获得一个对应于循环周期计数的显式数字整数?

1 个答案:

答案 0 :(得分:1)

使用each_with_index方法。它遍历集合的元素,为您提供项目和索引。它也适用于无序枚举,但顺序可能不一致。