Listのメソッドについてまとめていきます。
随時更新していく予定です。
#add(E e)
指定された要素をこのリストの最後に追加します。
List<String> list = new ArrayList<>();
list.add("あいう");
list.add("えお");
list.add("asdf");
System.out.println(list);
[あいう, えお, asdf]
#add(int index, E element)
リスト内の指定された位置に、指定された要素を挿入します。
List<String> list = new ArrayList<>();
list.add("あいう");
list.add("えお");
//0番目に挿入する
list.add(0, "ABCD");
list.add("asdf");
System.out.println(list);
[ABCD, あいう, えお, asdf]
#clear()
すべての要素をこのリストから削除します。
List<String> list = new ArrayList<>();
list.add("あいう");
list.add("えお");
list.add(0, "ABCD");
list.add("asdf");
System.out.println(list);
list.clear();
System.out.println(list);
[ABCD, あいう, えお, asdf]
[]
#contains(Object o)
指定の要素がこのリストに含まれている場合にtrueを返します。
List<String> list = new ArrayList<>();
list.add("あいう");
list.add("えお");
list.add(0, "ABCD");
list.add("asdf");
//"asdf"はlistに含まれているので、true
System.out.println(list.contains("asdf"));
//"a"はlistに含まれていないので、false
System.out.println(list.contains("a"));
true
false
#containsAll(Collection> c)
指定されたコレクションのすべての要素がこのリストに含まれている場合にtrueを返します。
List<String> list = new ArrayList<>();
List<String> list3 = new ArrayList<>();
List<String> list4 = new ArrayList<>();
list.add("あい");
list.add("うえ");
list.add(0, "AB");
list3.add("あい");
list3.add("うえ");
list3.add(0, "AB");
list4.add("あい");
list4.add("う");
list4.add(0, "AB");
//listとlist3の含まれている要素が同じなので、true
System.out.println(list.containsAll(list3));
//listとlist4の含まれている要素が相違しているので、false
System.out.println(list.containsAll(list4));
true
false
#equals(Object o)
指定されたオブジェクトがこのリストと等しいかどうかを比較します。
List<String> list = new ArrayList<>();
List<String> list3 = new ArrayList<>();
List<String> list4 = new ArrayList<>();
list.add("あい");
list.add("うえ");
list.add(0, "AB");
list3.add("あい");
list3.add("うえ");
list3.add(0, "AB");
list4.add("あい");
list4.add("う");
list4.add(0, "AB");
System.out.println(list.equals(list3));
System.out.println(list.equals(list4));
true
false
#get(int index)
このリスト内の指定された位置にある要素を返します。
List<String> list = new ArrayList<>();
list.add("あい");
list.add("うえ");
list.add(0, "AB");
System.out.println(list.get(1));
System.out.println(list.get(2));
//IndexOutOfBoundsException
System.out.println(list.get(3));
あい
うえ
IndexOutOfBoundsException
#hashCode()
このリストのハッシュ・コード値を返します。
List<String> list = new ArrayList<>();
list.add("あい");
list.add("うえ");
list.add(0, "AB");
System.out.println(list.hashCode());
14680320
#indexOf(Object o)
指定された要素がこのリスト内で最初に検出された位置のインデックスを返します。指定された要素がこのリストにない場合は -1を返します。
List<String> list = new ArrayList<>();
list.add("あい");
list.add("うえ");
list.add(0, "AB");
System.out.println(list.indexOf("あい"));
System.out.println(list.indexOf("AB"));
System.out.println(list.indexOf("q"));
1
0
-1
#isEmpty()
このリストに要素がない場合にtrueを返します。
List<String> list = new ArrayList<>();
List<String> list3 = new ArrayList<>();
List<String> list4 = new ArrayList<>();
list.add("あい");
list.add("うえ");
list.add(0, "AB");
list3.add("");
//要素があるので、false
System.out.println(list.isEmpty());
//要素にブランクが入っているので、false
System.out.println(list3.isEmpty());
//要素がないので、true
System.out.println(list4.isEmpty());
false
false
true
#lastIndexOf(Object o)
指定された要素がこのリスト内で最後に検出された位置のインデックスを返します。指定された要素がこのリストにない場合は -1を返します。
List<String> list = new ArrayList<>();
list.add("あい");
list.add("あい");
list.add("うえ");
//検出される最後の位置が1
System.out.println(list.lastIndexOf("あい"));
//"あ"は存在しないので、-1
System.out.println(list.lastIndexOf("あ"));
1
-1
#remove(int index)
このリスト内の指定された位置にある要素を削除します。
List<String> list = new ArrayList<>();
list.add("あい");
list.add("あい");
list.add("うえ");
System.out.println(list);
System.out.println(list.remove(1));
System.out.println(list);
[あい, あい, うえ]
あい
[あい, うえ]
#remove(Object o)
指定された要素がこのリストにあれば、その最初のものをリストから削除します。
List<String> list = new ArrayList<>();
list.add("あい");
list.add("あい");
list.add("うえ");
System.out.println(list);
//文字を指定しても削除可能
list.remove("あい");
System.out.println(list);
[あい, あい, うえ]
[あい, うえ]
#removeAll(Collection> c)
このリストから、指定されたコレクションに含まれる要素をすべて削除します。
List<String> list = new ArrayList<>();
list.add("あい");
list.add("あい");
list.add("うえ");
System.out.println(list);
list.removeAll(list);
System.out.println(list);
[あい, あい, うえ]
[]
#retainAll(Collection> c)
このリスト内で、指定されたコレクションに含まれている要素だけを保持します。
※指定されたコレクションに含まれていないすべての要素をこのリストから削除します。
List<String> list = new ArrayList<>(Arrays.asList("Apple","Orange", "Melon"));
List<String> list3 = new ArrayList<>(Arrays.asList("Orange","Melon"));
//listにlist3と同じ要素が含まれているもののみ保持
list.retainAll(list3);
System.out.println(list);
[Orange, Melon]
#set(int index, E element)
このリスト内の指定された位置にある要素を、指定された要素に置き換えます。
List<String> list = new ArrayList<>(Arrays.asList("Apple","Orange", "Melon"));
//0番目の"Apple"と"Banana"を入れ替える
list.set(0, "Banana");
System.out.println(list);
[Banana, Orange, Melon]
#size()
このリスト内にある要素の数を返します。
List<String> list = new ArrayList<>(Arrays.asList("Apple","Orange", "Melon"));
System.out.println(list.size());
list.add("Banana");
//直前にaddしているので、要素数が増加
System.out.println(list.size());
3
4
#subList(int fromIndex, int toIndex)
このリストの、指定されたfromIndex (これを含む)からtoIndex (これを含まない)までの部分のビューを返します。
ArrayList<Integer> foo = new ArrayList<>(Arrays.asList(10, 30, 5, 1, 11, 90));
System.out.println(foo.subList(0, 3));
System.out.println(foo.subList(1, 2));
System.out.println(foo.subList(4, 5));
[10, 30, 5]
[30]
[11]
#toArray(T[] a)
このリスト内のすべての要素を適切な順序で(最初の要素から最後の要素へ)含んでいる配列を返します。
リストから配列に変換するには、toArrayメソッドを利用します。
List<String> list = new ArrayList<>(Arrays.asList("Apple","Orange", "Melon"));
String[] str = new String[list.size()];
list.toArray(str);
System.out.println(Arrays.toString(str));
System.out.println(list);
[Apple, Orange, Melon]
[Apple, Orange, Melon]