配列に対する繰り返し処理の使い方

配列オブジェクトは範囲オブジェクトと同じく複数の要素を持つオブジェクトです。配列オブジェクトに対しては for 文などの繰り返し処理と組み合わせて利用することができます。ここでは Ruby で配列オブジェクトに対して繰り返し処理を行う方法を解説します。

(2021 年 06 月 30 日公開 / 2022 年 10 月 12 日更新)

配列に対してfor文を使う

for 文のオブジェクトに配列オブジェクトを指定すると、配列に含まれる要素を順に取り出して繰り返し処理が行われます。( for 文については「for文」を参照して下さい)。

for 変数 in 配列オブジェクト do
  実行する処理1
  実行する処理2
end

具体的には次のように記述します。

ary = Array["赤", "青", "緑"]
for var in ary do
  puts("Color = " + var)
end

配列の含まれる要素が順に変数 var に代入され do から end までの処理が繰り返し実行されます。

配列に対してeachメソッドを使う

Array クラスにも each メソッドは用意されています。配列オブジェクトに対して each メソッドを実行すると、配列に含まれる要素を順に取り出して繰り返し処理が行われます。( each メソッドについては「eachメソッド」を参照して下さい)。

配列オブジェクト.each{|変数|
  実行する処理1
  実行する処理2
}

具体的には次のように記述します。

ary = Array["赤", "青", "緑"]
ary.each{|var|
  puts("Color = " + var)
}

配列の含まれる要素が順に変数 var に代入され { から } までの処理が繰り返し実行されます。

複数の変数を使う場合と比較して、配列を使用した場合には繰り返し処理を使うことが出来ます。結果として複数のオブジェクトをの値を連続して処理したい場合に簡潔に記述することが出来ます。

サンプルコード

では簡単なプログラムで確認してみます。

# encoding: UTF-8

ary = Array["赤", "青", "緑"]
for var in ary do
  puts("Color = " + var)
end

ary = Array[80, 91, 67]
sum = 0
ary.each{|num|
  sum += num
  puts("金額:" + num.to_s + "円")
}

puts("合計金額は" + sum.to_s, "円です")

下記のように実行して下さい。

配列に対する繰り返し

-- --

Ruby で配列オブジェクトに対して繰り返し処理を行う方法を解説しました。

( Written by Tatsuo Ikura )

広告
Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。