【Java】ArrayListの要素を削除するArrayList.removeメソッドについて解説します

こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、11年目エンジニアです。

この記事では、 JavaでArrayListの要素を削除するArrayList.removeメソッドについて

  • ArrayList.removeメソッドとは
  • ArrayList.removeメソッドを使ったサンプルプログラム

と、丁寧に解説していきます。

前提条件:実行環境について

実行環境は以下の通りです。

OS Windows10
IntelliJ IDEAのエディション Community(無料版)
IntelliJ IDEAのバージョン 2021.3.2
プロジェクト Javaプロジェクト
SDK Oracle OpenJDK version17.0.2

Javaを動かすためにIntelliJ IDEAを使っています。
IntelliJ IDEAのインストールは、下の記事をご参考ください。

ArrayList.removeメソッドとは

ArrayList.removeメソッドとは、ArrayListから引数で指定されているインデックスや値を削除するメソッドです。
ArrayList.removeメソッドを使うためには、

をインポートする必要があります。

ArrayList.removeメソッドは使い方が

  • パターン1:インデックスを指定する場合
  • パターン2:値を指定する場合

の合計2パターンあります。
それぞれ解説します。

パターン1:インデックスを指定する場合

インデックスを指定してArrayList.removeメソッドを使った場合、引数で指定したインデックスで指定された要素が削除されます。
もし削除した位置より後ろに要素が存在する場合、1つずつ前にずれます。

たとえば

というArrayListがある、とします。
中身は

です。
このArrayListに対して

と実行した場合、変数sampleには

と、0番目に「test」が削除され「hogehoge」は1つ前にずれます。

注意点としてもし指定するインデックスがArrayListの要素数より大きい場合、コンパイルは通るものの実行すると

という例外が発生します。

パターン2:値を指定する場合

値を指定してArrayList.removeメソッドを使った場合、引数に指定した値がArrayListに存在する場合要素が削除されます。
ArrayListに指定した値の要素が複数ある場合は、最初に見つかった要素、つまり最小のインデックスの要素を削除します。
こちらもパターン1と同様にもし削除した位置より後ろに要素が存在する場合、1つずつ前にずれます。

たとえば

というArrayListがある、とします。
中身は

です。
このArrayListに対して

と実行した場合、変数sampleには

と、0番目に「test」が削除されますが、2番目の「test」は削除されません。

もし指定する値がArrayListに存在しなかった場合は、何も起こりません。

では、次の章で実際に使ってみます。

ArrayList.removeメソッドを解説するプログラムの概要

ArrayList.removeメソッドを解説するプログラムでは、ArrayListを新規作成し

  1. インデックス指定
  2. 値指定

でそれぞれ要素を削除して、結果を表示させます。
解説で使うJavaプログラムは、Sampleプロジェクトのsampleパッケージ内にある、とします。
JavaのArrayList.removeメソッドを解説

Javaサンプルプログラム

サンプルプログラムのfor文の書き方は、拡張for文と言います。
詳しくはこちらの記事をご参考ください。

実行結果

Javaプログラムを実行します。
実行のやり方は

  • プログラムを右クリックして実行
  • 実行タブから実行
  • ガターから実行

の3種類あるので、いずれかで実行します。
詳しい解説は以下の記事をご参考ください。

JavaのArrayList.removeメソッドを解説

指定したインデックスと値でそれぞれArrayListから要素が削除できていることが確認できました。

まとめ:ArrayList.removeメソッドを使ってみよう!

以上がJavaのArrayList.removeメソッドについての解説でした!

あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ

コメント

タイトルとURLをコピーしました