本サイトはプロモーション(広告)が含まれています。

【Java】Listのsetメソッドを使って要素を上書きする(addとの違いは上書きできる点)

【Java】Listのsetメソッドを使って要素を上書きする(addとの違いは上書きか追加)

 javaのListの要素を上書きする場合は、setメソッドを使用します。

set(数値, 値): Listの要素を上書き

set(数値, 値):Listの要素を上書き

set(数値,値)を使用すると、Listの要素を上書きすることができます。

List<String> list= new ArrayList <>();
list.add("テスト");
list.add("リスト");
list.set(0,"てすと");
System.out.println(list);

//実行結果 
[てすと, リスト]

addとの違いは上書きできる点

Listのaddメソッドはadd(数値,値)という形でも使用することができます。

List<String> list= new ArrayList <>();
list.add("テスト");
list.add("リスト");
list.add(0,"てすと");
System.out.println(list);

//実行結果 
[てすと, テスト, リスト]
  • [てすと, リスト]  //set(数値,値)
  • [てすと, テスト, リスト]  //add(数値,値)

set(数値,値)は置き換わるが、add(数値,値)では位置に追加されることが分かります。

置き換える要素がない場合はエラーとなる

List<String> list= new ArrayList <>();
list.set(0,"てすと");
System.out.println(list);
//実行結果 
Exception in thread "main" java.lang.IndexOutOfBoundsException:
Index 0 out of bounds for length 0

 setメソッドは置き換える要素がないとエラーとなるため使用できません。

List内に要素があることを前提に使用する必要があります。

Javaの記事一覧へ

PAGE TOP