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