Contents
- 1 Listの宣言方法 : List< 値> オブジェクト名 = new ArrayList<>();
- 2 ArrayListの主要なメソッドについて
- 2.1 Listのメソッド:①add(値) リストの最後に要素を追加
- 2.2 Listのメソッド:②add(数値, 値) リストの数値目に要素を挿入
- 2.3 Listのメソッド:③set(数値, 値) リストの数値番目の要素を上書き
- 2.4 Listのメソッド:④get(数値) 数値番目の要素を取り出す
- 2.5 Listのメソッド:⑤size() 格納されている要素数を数える
- 2.6 Listのメソッド:⑥isEmpty() 要素数がゼロであるかを判定
- 2.7 Listのメソッド:⑦contains(値) 指定要素が含まれているかを判定
- 2.8 Listのメソッド:⑧ indexOf(値) 指定要素が何番目にあるかを検索
- 2.9 Listのメソッド:⑨ clear()要素を全て削除する
- 2.10 Listのメソッド:⑩ remove(値) 指定されている内容の要素を削除する
Listの宣言方法 : List< 値> オブジェクト名 = new ArrayList<>();
Listを利用する場合の書式は「List< 値> オブジェクト名 = new ArrayList<>();」となります。
なお、Listを含め、コレクションクラス(MapほかMapやSetなど)はインスタンスでないものは格納できません。
例えば、下記のようなListは作成できません。
List<int> list2 = new ArrayList <>(); //NG 文法エラー //構文エラーがあります。"Dimensions" を挿入して ReferenceType を完了してください List<Integer> list2 = new ArrayList <>(); //OK
つまり、intやbooleanなどの基本型の使用はできません(※文法エラーになります)それに対応して、「8つの基本データ型の情報を中身に保持すること」を責務とするラッパークラスが用意されています。
そのため、次のようにキーの型名, 値の型名は置き換えて使用する必要があります。
基本データ型 | ラッパクラス | |
byte | ➡ | Byte |
short | ➡ | Short |
int | ➡ | Integer |
long | ➡ | Long |
float | ➡ | Float |
double | ➡ | Double |
char | ➡ | Character |
boolean | ➡ | Boolean |
Listの初期化サンプル
//Listを使用する場合import import java.util.ArrayList; import java.util.List; マップの初期化セット List<String> list1 = new ArrayList <>(); List<Integer> list2 = new ArrayList <>();
ArrayListの主要なメソッドについて
ArrayListのメソッドでどのようなことができるのか主要なものをまとめました。
番号 | メソッド | 意味 |
① | add(値) | リストの最後に要素を追加 |
② | add(数値, 値) | リストの数値目に要素を挿入 |
③ | set(数値, 値) | リストの数値番目の要素を上書き |
④ | get(数値) | 数値番目の要素を取り出す |
⑤ | size() | 格納されている要素数を数える |
⑥ | isEmpty() | 要素数がゼロであるかを判定 |
⑦ | contains(値) | 指定要素が含まれているかを判定 |
⑧ | indexOf(値) | 指定要素が何番目にあるかを検索 |
⑨ | clear() | 要素を全て削除する |
⑩ | remove(値) | 指定されている内容の要素を削除する |
Listのメソッド:①add(値) リストの最後に要素を追加
add(値)メソッドを使用すると、リストの最後に要素を追加することができます。
次のサンプルプログラムでは、リストにデータ順に追加されていることが分かります
import java.util.ArrayList; import java.util.List; public class ListaddTest { public static void main(String[] args) { List<String> listテスト= new ArrayList <>(); listテスト.add("テスト1"); listテスト.add("テスト2"); // [テスト1, テスト2]と出力 System.out.println(listテスト); listテスト.add("テスト3"); listテスト.add("テスト4"); listテスト.add("テスト5"); // [テスト1, テスト2, テスト3, テスト4, テスト5]と出力 System.out.println(listテスト); } }
実行結果
[テスト1, テスト2] [テスト1, テスト2, テスト3, テスト4, テスト5]
Listのメソッド:②add(数値, 値) リストの数値目に要素を挿入
add(数値,値)を使用すると、リストの数値の位置に要素を挿入することができます。
次のサンプルプログラムでは、リストに数値の指定した位置に要素を挿入されていることが分かります。
import java.util.ArrayList; import java.util.List; public class ListaddTest2 { public static void main(String[] args) { List<String> listテスト= new ArrayList <>(); listテスト.add("テスト1"); listテスト.add("テスト2"); // [テスト1, テスト2]と出力 System.out.println(listテスト); // 0番目の位置に"テスト0"を追加 listテスト.add(0,"テスト0"); // [テスト0, テスト1, テスト2]と出力 System.out.println(listテスト); } }
実行結果
[テスト1, テスト2] [テスト0, テスト1, テスト2]
Listのメソッド:③set(数値, 値) リストの数値番目の要素を上書き
set(数値,値)を使用すると、リストの数値の位置に要素を上書きすることができます。
次のサンプルプログラムでは、リストの数値の位置に要素を上書きされていることが分かります。
import java.util.ArrayList; import java.util.List; public class ListsetTest { public static void main(String[] args) { List<String> listテスト= new ArrayList <>(); listテスト.add("テスト1"); listテスト.add("テスト2"); // [テスト1, テスト2]と出力 System.out.println(listテスト); // 0番目の位置の"テスト1"を"テスト0"に上書き listテスト.set(0,"テスト0"); // [テスト0, テスト2]と出力 System.out.println(listテスト); } }
実行結果
[テスト1, テスト2] [テスト0, テスト2]
Listのメソッド:④get(数値) 数値番目の要素を取り出す
get(数値)を使用すると、リストの数値の位置の要素を取り出すことができます。
次のサンプルプログラムでは、リストの数値の位置の要素を取り出されていることが分かります。
0番目の要素に「テスト1」、1番目の要素に「テスト2」が入っており、、1番目の要素は「テスト2」を取り出すことが分かります。
import java.util.ArrayList; import java.util.List; public class ListgetTest { public static void main(String[] args) { List<String> listテスト= new ArrayList <>(); listテスト.add("テスト1"); listテスト.add("テスト2"); // [テスト1, テスト2]と出力 System.out.println(listテスト); String 一番目の要素 = listテスト.get(1); // 1番目の要素"テスト2"を出力 System.out.println(一番目の要素); } }
実行結果
[テスト1, テスト2] テスト2
Listのメソッド:⑤size() 格納されている要素数を数える
size()を使用すると、リストに格納されている要素数を数えることができます。
次のサンプルプログラムでは、要素が格納されていない段階で0、addで要素を追加した後は2と要素を数えていることが分かります。
import java.util.ArrayList; import java.util.List; public class ListsizeTest { public static void main(String[] args) { List<String> listテスト= new ArrayList <>(); int 要素数 = listテスト.size(); // 要素数0を出力する System.out.println(要素数); listテスト.add("テスト1"); listテスト.add("テスト2"); int 要素数2 = listテスト.size(); // 要素数2を出力する System.out.println(要素数2); } }
実行結果
0 2
Listのメソッド:⑥isEmpty() 要素数がゼロであるかを判定
isEmpty()を使用すると、要素数がゼロであるかを判定することができます。
次のサンプルプログラムでは、要素数がゼロであれば、true、要素数がゼロでない場合、falseであることが分かります。
import java.util.ArrayList; import java.util.List; public class ListisEmptyTest { public static void main(String[] args) { List<String> listテスト= new ArrayList <>(); boolean 要素数ゼロ = listテスト.isEmpty(); System.out.println(要素数ゼロ); listテスト.add("テスト1"); boolean 要素数イチ = listテスト.isEmpty(); System.out.println(要素数イチ); } }
実行結果
true false
Listのメソッド:⑦contains(値) 指定要素が含まれているかを判定
contains(値)を使用すると、指定要素が含まれているか判定することができます。
次のサンプルプログラムでは、指定要素が含まれていれば、true、指定要素が含まれていない場合、falseであることが分かります。
import java.util.ArrayList; import java.util.List; public class ListcontainsTest { public static void main(String[] args) { List<String> listテスト= new ArrayList <>(); listテスト.add("テスト1"); listテスト.add("テスト2"); boolean テスト1有 = listテスト.contains("テスト1"); //テスト1は要素に含まれているためtrueを出力 System.out.println(テスト1有); boolean テスト3無 = listテスト.contains("テスト3"); //テスト3は要素に含まれているためfalseを出力 System.out.println(テスト3無); } }
実行結果
true false
Listのメソッド:⑧ indexOf(値) 指定要素が何番目にあるかを検索
indexOf(値)を使用すると、指定要素が何番目にあるかを検索することができます。
次のサンプルプログラムでは、指定要素が含まれていれば、指定要素の位置、指定要素が存在しない場合は-1を出力します。
次のサンプルプログラムでは、テスト1は0番目の位置にあるため、0を出力していることが分かります。
import java.util.ArrayList; import java.util.List; public class ListIndexofTest { public static void main(String[] args) { List<String> listテスト= new ArrayList <>(); listテスト.add("テスト1"); listテスト.add("テスト2"); System.out.println(listテスト); int テスト1は何番目 = listテスト.indexOf("テスト1"); //テスト1は0番目の位置に含まれているため0を出力 System.out.println(テスト1は何番目); //テスト3は含まれていないため-1を出力 int テスト3は何番目 = listテスト.indexOf("テスト3"); System.out.println(テスト3は何番目); } }
実行結果
0 -1
Listのメソッド:⑨ clear()要素を全て削除する
clear()を使用すると、要素を全て削除することができます。
次のサンプルプログラムでは、addメソッドで要素を追加しましたが、clearメソッドで、要素を全て削除されることが確認できます。
import java.util.ArrayList; import java.util.List; public class ListclearTest { public static void main(String[] args) { List<String> listテスト= new ArrayList <>(); listテスト.add("テスト1"); listテスト.add("テスト2"); //要素が追加されていることを確認 System.out.println(listテスト); listテスト.clear(); //要素が削除されていることを確認 System.out.println(listテスト); } }
実行結果
[テスト1, テスト2] []
Listのメソッド:⑩ remove(値) 指定されている内容の要素を削除する
remove(値)を使用すると、指定した要素を削除することができます。
次のサンプルプログラムでは、addメソッドで要素がありましたが、removeメソッドで、指定した要素を「テスト1」が削除されることが確認できます。
import java.util.ArrayList; import java.util.List; public class ListremoveTest { public static void main(String[] args) { List<String> listテスト= new ArrayList <>(); listテスト.add("テスト1"); listテスト.add("テスト2"); // [テスト1, テスト2]と出力 System.out.println(listテスト); listテスト.remove("テスト1"); // 指定した要素「テスト1」が削除され [テスト2]と出力 System.out.println(listテスト); listテスト.remove("テスト3"); // 指定した要素「がない場合、要素の削除は行われない System.out.println(listテスト); } }
実行結果
[テスト1, テスト2] [テスト2] [テスト2]