読者です 読者をやめる 読者になる 読者になる

Rubyで複数の配列を同時に処理する方法

Ruby

2つの配列を同時に処理していきたいときがあります。配列のインデックスを指定してもよいのですが、zipを使うとすっきりさせることができます。

array1 = [1, 2, 3, 4, 5]
array2 = [6, 7, 8, 9, 10]

array1.zip(array2).each do |a1, a2|
  # do something...
end

zipには2つ以上の配列を指定することもできます。

p [1,2,3].zip([4,5,6], [7,8,9])
#=> [[1, 4, 7], [2, 5, 8], [3, 6, 9]]

参考:Enumerable - Rubyリファレンスマニュアル