スライドショー

【Ruby入門】配列に要素を追加する方法(push・unshift)

配列に要素を変更するにはどうすればいいの?
配列に配列を追加する方法が知りたい

配列を使用していると、処理によっては配列に要素を追加したい場合もあります。

この記事では配列に要素を追加するpush、unshiftメソッドなどについて解説していきます。

配列に要素を追加するには

pushメソッド

pushメソッドは配列の末尾に要素を追加したいときに使用します。

配列オブジェクト.push(要素, …)
  • 追加したい要素をメソッドの引数に指定します。
  • 引数を複数指定した場合は最初の引数から順番に要素が追加されます。
  • 返り値には変更した配列が返されます。

基本的な使い方

それではpushメソッドの使い方を見ていきましょう。

# 配列を定義
fruits = ["apple", "orange", "melon", "banana"]

p fruits

# 配列の要素を末尾に追加
fruits.push("strawberry")

p fruits
["apple", "orange", "melon", "banana"]
["apple", "orange", "melon", "banana", "strawberry"]

配列の末尾に、pushメソッドで指定した要素であるstrawberryが追加されていることがわかりますね。

引数を複数指定する

pushメソッドは追加したい要素を複数指定することも可能です。

# 配列を定義
fruits = ["apple", "orange", "melon", "banana"]

p fruits

# 配列の要素を末尾に追加
fruits.push("strawberry", "pineapple")

p fruits
["apple", "orange", "melon", "banana"]
["apple", "orange", "melon", "banana", "strawberry", "pineapple"]

pushメソッドで要素を複数指定することで、順番に要素が追加されていることがわかりますね。

配列の末尾に配列を追加するには

配列の末尾に配列を追加したい場合、pushメソッドの引数に配列を追加すると、以下のようになります。

# 配列を定義
fruits1 = ["apple", "orange", "melon", "banana"]
fruits2 = ["strawberry", "pineapple"]

# 配列を末尾に追加
fruits1.push(fruits2)

p fruits1
["apple", "orange", "melon", "banana", ["strawberry", "pineapple"]]

しかし、配列の中に配列が追加されてしまうので、意図した結果にはなりません。そのため、配列の末尾に配列を追加したい場合はconcatメソッドを使用すると便利です。

以下はconcatメソッドを使用した配列の結合方法です。

# 配列を定義
fruits1 = ["apple", "orange", "melon", "banana"]
fruits2 = ["strawberry", "pineapple"]

# 配列を末尾に追加
fruits1.concat(fruits2)

p fruits1
["apple", "orange", "melon", "banana", "strawberry", "pineapple"]

concatメソッドについては、以下の記事で詳しく解説していますのでぜひ参考にしてください。

配列の先頭に要素を追加するには

unshiftメソッドは配列の先頭に引数で指定した要素が追加されます。

配列オブジェクト.unshift(引数, …)

使い方:

# 配列を定義
fruits = ["apple", "orange", "melon", "banana"]
 
p fruits
 
# 配列に要素を追加する
fruits.unshift("pineapple")
 
p fruits
["apple", "orange", "melon", "banana"]
["pineapple", "apple", "orange", "melon", "banana"]

配列でよく使うメソッド

配列の基本やここで紹介した追加方法以外のよく使うメソッドについては、以下の記事で詳しく解説しています。

まとめ

ここでは、配列に要素を追加するpushメソッドについて、以下の内容を解説しました。

  • pushとは
  • pushの使い方
  • pushで複数要素を指定する方法
  • 配列を末尾に追加する方法

配列の末尾に要素を追加したいときはpushメソッドが便利ですので、使い方については理解しておきましょう。

もし、pushメソッドの使い方を忘れてしまったら、この記事を思い出してくださいね!

LINEで送る
Pocket

無料でSEからWebエンジニアへ転職しませんか?



侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、

  • システムエンジニアという職業だけどコードが書けない
  • 事務作業が多くスキルがないため将来が不安
  • スクールに通うと完全未経験者と同じスタートになるからレベルが合わない
という、すでに知識があるSEならではのお悩みがあることに気づきました。そんな方におすすめなのが、弊社の「転職コース 」です。

弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。さらにこちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。

既に知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。

まずは無料体験レッスンを予約する

書いた人

ヤマシタ

システムエンジニアとして10年勤務→フリーランスへ。現在は侍ブログ編集部としてこれまでに200記事以上の記事を執筆。
大規模システム開発からWebアプリ開発まで経験あり。最近ではPythonの機械学習に挑戦中。

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説