Javaの配列からリストを作成するサンプルです。
CollectionsクラスのaddAllメソッドを使用します。
| 確認環境 ・Java 8 |
目次
addAllメソッド
| public static <T> boolean addAll(Collection<? super T> c,T... elements) |
- 配列からリストを作成します。
- 1つめの引数にリストをセットし2つめの引数に配列をセットします。
- リストを変更しても元の配列は変更されません。
- リストに追加または削除を行うことが可能です。元の配列は変更されません。
- Collectionsクラスのメソッドです。
- 以下はJava8 API仕様のCollectionsクラスのaddAllメソッドのリンクです。
https://docs.oracle.com/javase/jp/8/docs/api/java/util/Collections.html#addAll-java.util.Collection-T...-
コード
addAllメソッドのサンプルです。
package test1;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Test1 {
public static void main(String[] args) {
// 配列
String[] colors1 = {"赤","黄","青"};
// リストを作成
List<String> list1 = new ArrayList<>();
// 配列からリストを作成
Collections.addAll(list1, colors1);
System.out.println(list1); // [赤, 黄, 青]
}
}
15行目は、addAllメソッドで配列からリストを作成しています。
リストを変更した場合
addAllメソッドで配列からリストを作成した後、リストの値を変更した場合です。
配列の値は変更されません。
package test1;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Arrays;
public class Test1 {
public static void main(String[] args) {
// 配列
String[] colors1 = {"赤","黄","青"};
// リストを作成
List<String> list1 = new ArrayList<>();
// 配列からリストを作成
Collections.addAll(list1, colors1);
//リストを変更
list1.set(1, "オレンジ");
//リストの値
System.out.println(list1);// [赤, オレンジ, 青]
//配列の値 (変更されない)
System.out.println
(Arrays.toString(colors1));// [赤, 黄, 青]
}
}
16行目は、CollectionsクラスのaddAllメソッドで配列からリストを作成しています。
19行目は、リストを変更しています。
22行目はリストの値で、25行目は配列の値です。
26行目のtoStringメソッドは、配列を引数にして、文字列を返します。
リストへ追加/削除した場合
addAllメソッドで配列からリストを作成した後、リストに対して追加と削除した場合です。
配列の値は変更されません。
package test1;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Arrays;
public class Test1 {
public static void main(String[] args) {
// 配列
String[] colors1 = {"赤","黄","青"};
// リストを作成
List<String> list1 = new ArrayList<>();
// 配列からリストを作成
Collections.addAll(list1, colors1);
//リストに要素を追加
list1.add("オレンジ");
//リストの要素を削除
list1.remove(1);
//リストの値
System.out.println(list1);// [赤, 青, オレンジ]
//配列の値 (変更されない)
System.out.println
(Arrays.toString(colors1));// [赤, 黄, 青]
}
}
16行目は、addAllメソッドで配列からリストを作成しています。
19行目は、リストに要素を追加しています。
22行目は、リストから要素を削除しています。
25,28行目はそれぞれリストと配列の値です。
toStringメソッドは、配列を引数にして、文字列を返します。
関連の記事
Java 配列の使い方のサンプル
Java ArrayListの使い方のサンプル
Java 配列からリストを作成するサンプル(Arraysクラス)
Java リストから配列を作成するサンプル(ArrayList)