HOWTO · Java
Java で配列をリストに変換する方法
この記事では、Java で配列をリストに変換する方法を紹介しています。
このページの内容
このチュートリアルでは、Java で配列をリストに変換する 3つの方法について説明します。
空のリストを作成し、すべての要素を追加する
これは非常に些細で明白な方法です。空のリストを作成し、配列内のすべての要素をループして、リストに追加することができます。
以下の例はこれを示しています。
import java.util.*;
import java.util.stream.*;
public class MyClass {
public static void main(String args[]) {
String[] myArray = new String[] {"1", "2", "3"};
List<String> myList = new ArrayList<>();
for (int i = 0; i < myArray.length; i++) {
myList.add(myArray[i]);
}
System.out.println(myList);
}
}
この結果は次のようになります。
> [1, 2, 3]
Java で配列をリストに変換するには Arrays.asList() を使用する
配列をリストに変換するには、Arrays クラスが提供する組み込みのメソッドを使用することができます - Arrays.asList(arr)。コードの中で java.util.* をインポートするようにしてください。
以下の例はこれを示しています。
import java.util.*;
public class MyClass {
public static void main(String args[]) {
String[] myArray = new String[] {"1", "2", "3"};
List<String> myList = Arrays.asList(myArray);
System.out.println(myList);
}
}
この結果は次のようになります。
> [1, 2, 3]
しかし、このメソッドはサイズが固定されたリストになり、それ以上の要素を追加することはできません。
import java.util.*;
public class MyClass {
public static void main(String args[]) {
String[] myArray = new String[] {"1", "2", "3"};
List<String> myList = Arrays.asList(myArray);
myList.add("4");
}
}
この結果は次のようになります。
> Exception in thread "main" java.lang.UnsupportedOperationException
at java.base/java.util.AbstractList.add(AbstractList.java:153)
at java.base/java.util.AbstractList.add(AbstractList.java:111)
at MyClass.main(MyClass.java:6)
Java で配列をリストに変換するには new ArrayList<>(Arrays.asList(arr)) を使用する
このメソッド new ArrayList<>(Arrays.asList(integers)); は、配列をリストに変換し、そのリストに要素を追加することができます。配列をリストに変換して追加することもできます。以下の例では、これを説明しています。
import java.util.*;
public class MyClass {
public static void main(String args[]) {
String[] myArray = new String[] {"1", "2", "3"};
List<String> myList = new ArrayList<>(Arrays.asList(myArray));
System.out.println("After conversion from array to list: " + myList);
myList.add("4");
System.out.println("After adding a new element: " + myList);
}
}
この結果は次のようになります。
> After conversion from array to list: [1, 2, 3]
> After adding a new element: [1, 2, 3, 4]