有一种each_pair
方法允许在每次循环迭代时获取散列对:
{ 1 => "a", 2 => "b" }.each_pair do |key, value|
# do something with #{key} and #{value}
end
如何在每次循环迭代中知道当前数组元素的索引?
array.each do |element|
# what is element index in array?
end
使用一些递增迭代器有一个无聊的解决方案。但是该迭代器应该在循环之前分配,并且应该在每次迭代时手动递增。这显然很无聊。
如果有某种方法可以用数组压缩一些数组1..
并获得像["b", "d", "e"] → [(1,"b"), (2,"d"), (3,"e")] and
than pattern matched each element of the pair in
|这样的元组数组,那就太好了。|` 声明。
所以,最后,我正在寻找的是一些功能f
,即:
f(["a"]) do |index, element|
# index == 1, element == "a"
end