【Java】3分でマスター!addを使ってリスト(List)に要素を追加する!

リスト(List)に要素を追加する場合にはListクラスのaddメソッドを使用します。

Listクラスのaddメソッドは、単数の値をリストに追加するメソッドです。
リストを扱う場合には必ず扱う基本的なメソッドになりますが、3分あればすぐにマスターできますのですぐに覚えておきましょう。

今回はListクラスのaddメソッドを使って以下の場合でリスト(List)に要素を追加します。
⚫︎ リストの最後に要素を追加する場合
⚫︎ インデックスを指定してリストに要素を追加する場合
⚫︎ リストの要素数以上のインデックスを指定する場合

addメソッドとは

ListクラスのaddAllメソッドは、1つの値をリストの要素としてに追加するメソッドとなります。
Listクラスのメソッドにはaddメソッドとよく似たaddAllメソッドがありますが、addAllメソッドは「複数の要素を追加する」メソッドです。
その為、単数追加の場合はaddメソッド、複数追加の場合はaddAllメソッドと認識しておきましょう。

addメソッドの書き方

addメソッドの構文は下記となります。

パラメータ

⚫︎ インデックス:
どこに追加するのか場所をインデックスで指定する。(スタートは0から)
⚫︎ 追加する要素:
追加したい要素を指定する。

addの()に第1パラメータをインデックス、第2ラメータを追加する値として指定することでリストに要素を追加します。
例えば「list1.add(1, “あ”);」とすると、list1の1番目に割り込みという形で「あ」が追加されます。
その為、list1の残りの要素は「あ」後ろに格納されます。

また、インデックスを指定しない場合は、リストの一番後ろに追加されます。

リストに要素を追加するサンプルコード

リスト(List)の要素を上書きするサンプルコードを紹介します。

リストの最後に要素を追加する場合

出力結果

初期状態:[]
要素追加後A:[あいうえお, かきくけこ, さしすせそ]
初期状態:[]
要素追加後B:[1, 2, 3]

リストの要素数がパラメータの配列のサイズ以下の場合、パラメータの配列に要素を格納したものを返しています。
上書きされなかった要素の先頭の要素には、nullが代入されています。

インデックスを指定してリストに要素を追加する場合

例1

出力結果

初期状態:[]
要素追加後1:[あいうえお, かきくけこ, さしすせそ]
要素追加後1:[あいうえお, がぎぐげご, かきくけこ, さしすせそ]
初期状態:[]
要素追加後2:[1, 2, 4]
要素追加後2:[1, 2, 3, 4]

措定したインデックスに追加したい値が要素として追加されています。

リストの要素数以上のインデックスを指定する場合

addメソッドにリストの要素数以上のインデックスを指定してみます。

例1

出力結果

Exception in thread “main” java.lang.IndexOutOfBoundsException: Index: 5, Size: 3

「サイズに対してインデックスの指定がおかしい」というエラーが発生します。

今回のポイント

addでリストに要素を追加

リストに要素を追加するにはListクラスのaddメソッドを使用する

⚫︎ Listクラスのaddメソッドでリストに要素を追加する

⚫︎ パラメータに追加する要素だけ指定してaddメソッドを呼び出す場合は、リストの最後の要素に追加される

⚫︎ addメソッドの第1パラメータにインデックスを指定し、第2パラメータに追加したい要素を指定する場合は、指定したリストの位置に要素を追加する

⚫︎ リストの要素数以上のインデックスを指定する場合、「IndexOutOfBoundsException」例外が発生します。

関連記事

リスト(List)に複数の要素を追加するaddAll()メソッドについてはこちらをご参考ください。

Writer
壷井

壷井

株式会社flyhawkの壷井です。フライテックメディア事業部でのメディア運営・ライター業務なども担当。愛機はMac Book AirとThinkPad。好きな言語:swift、JS系(Node.js等)。好きなサーバー:AWS。受託開発やプログラミングスクールの運営をしております。ご気軽にお問い合わせください。

最新の案件情報

フリーランスエンジニアの案件探し