LoginSignup
18
21

More than 3 years have passed since last update.

【Ruby】eachメソッドで複数の配列を同時にループさせる方法

Posted at

はじめに

最近、勉強している際に配列の中の要素を取り出すことがとても多い。そこでいつもeachメソッドを使って取り出すのですが、今回2つの配列から同時にループさして取り出したいと思ったので、その方法についてまとめておきます。

zipメソッドを使う

使い方は

1つ目の配列.zip(2つ目の配列) do |変数1,変数2|
 処理
end

例)

odd = [1,3,5]
even = [2,4,6]

odd.zip(even) do |x, y|
  puts x
  puts y
end

実行結果

#実行結果
irb(main):001:0> odd = [1,3,5]
=> [1, 3, 5]
irb(main):002:0> even = [2,4,6]
=> [2, 4, 6]
irb(main):003:0> 
irb(main):004:0> odd.zip(even) do |x, y|
irb(main):005:1*  puts x
irb(main):006:1>  puts y
irb(main):007:1> end
1
2
3
4
5
6
=> nil

参考

18
21
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
21