配列の要素を指定した回数繰り返す新しい配列を取得する

配列に含まれる要素を指定した回数だけ繰り返した新しい配列を取得することができます。ここでは Ruby で配列の要素を指定した回数繰り返す新しい配列を取得する方法について解説します。

(Last modified: )

配列の要素を指定した回数繰り返す新しい配列を取得する

Array クラスで用意されている * メソッドを使用すると、配列に含まれる要素を指定した回数繰り返した新しい配列を取得することができます。

具体的な例で使い方を確認します。

ary = ["A", "B", "C"]
newary = ary * 3

対象の配列には 3 つの要素が含まれており、この要素を指定した回数だけ繰り返した ["A", "B", "C", "A", "B", "C", "A", "B", "C"] という新しい配列を取得します。

なお繰り返された要素は元の要素のオブジェクトをコピーしたものではなく同じオブジェクトです。

ary = ["A", "B", "C"]
newary = ary * 3

puts(newary[0].object_id)  # 60
puts(newary[3].object_id)  # 60

0 番目の要素と 3 番目の要素は同じ "A" ですが、同じオブジェクトが参照されています。

サンプルコード

実際に試してみます。

# encoding: UTF-8

ary = ["Apple", "Peach", "Orange"]
p(ary)

puts()

newary = ary * 3
puts("要素を3回繰り返した配列を取得します")
p(newary)

実行結果は次のようになります。

配列の要素を指定した回数繰り返す新しい配列を取得する

-- --

Ruby で配列の要素を指定した回数繰り返す新しい配列を取得する方法について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

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