Rubyで配列に要素を追加・挿入する:push, insert, unshift

Rubyで配列に要素を追加、挿入する方法を紹介します。

要素の追加

配列の要素を追加する場合はpush()を使います。

配列.push(追加する要素)

要素は配列の末尾に追加されます。

a = [1, 2, 3]
a.push(4)
print a # [1, 2, 3, 4]

複数要素を同時に追加する場合は、第2引数以降に要素を渡すことで追加できます。

a = [1, 2, 3]
a.push(4, 5)
print a # [1, 2, 3, 4, 5]

また、「<<」の記号を使うことでも末尾に要素を追加できます。

a = [1, 2, 3]
a << 4
print a # [1, 2, 3, 4]

要素の挿入

配列に要素を挿入する場合はinsert()を使います。

配列.insert(挿入位置, 挿入する要素)

第1引数で指定した位置に、第2引数の要素が挿入されます。

a = [1, 2, 3]
a.insert(2, 4)
print a # [1, 2, 4, 3]

また、第1引数にマイナスの値を指定すると末尾から計算した位置に要素が挿入されます。

a = [1, 2, 3]
a.insert(-2, 4)
print a # [1, 4, 2, 3]

複数要素を同時に挿入する場合は、第3引数以降に要素を渡すことで追加できます。

a = [1, 2, 3]
a.insert(2, 4, 5)
print a # [1, 2, 4, 5, 3]

要素を先頭に挿入

要素を先頭に挿入する場合はunshift()を使います。

配列.unshift(挿入する要素)
a = [1, 2, 3]
a.unshift(4)
print a # [4, 1, 2, 3]

複数要素を同時に先頭に挿入する場合は、第2引数以降に要素を渡すことで挿入できます。

a = [1, 2, 3]
a.unshift(4, 5)
print a # [4, 5, 1, 2, 3]