Java如何初始化 ArrayList

在Java 9中还可以使用List.of()创建不可变列表

我们可以使用 List.of() 静态工厂方法来创建不可变列表。
唯一的缺点是这些列表不支持添加操作。

List<String> names = List.of("JackLi", "BobRobert");
System.out.println(names);

程序输出:

[JackLi, BobRobert]

使用ArrayList构造函数 创建ArrayList并添加对象

使用 ArrayList 构造函数是传统方法。
我们使用构造函数创建一个空白数组列表,并使用 add() 方法将元素添加到列表中。
我们可以一个一个地添加元素,也可以传递另一个集合来一步添加所有元素。

ArrayList<String> names = new ArrayList<>();
// 添加元素
names.add("JackLi");
names.add("BobRobert");
names.add("Lucie");
System.out.println(names);

HashMap<String, Integer> details = new HashMap<>();
details.put("keanu", 23);
details.put("max", 24);
details.put("john", 53);

// 从其他集合添加元素
names.addAll(details.keySet());
System.out.println(names);

程序输出。

[JackLi, BobRobert, Lucie]
[JackLi, BobRobert, Lucie, max, john, keanu]
www. On IT Road .com

初始化列表的arraylist

有时,我们可能需要初始化列表的数组列表。

List<List<Integer>> marks = new ArrayList<>();

marks.add( Arrays.asList(10, 20, 30) );
marks.add( Arrays.asList(40, 50, 60) );
marks.add( Arrays.asList(70, 80, 90) );
for (List<Integer> mark : marks) {
   System.out.println(mark);
}

程序输出。

[10, 20, 30]
[40, 50, 60]
[70, 80, 90]

请注意Arrays.asList()不返回java.util.ArrayList实例。
它返回java.util.Arrays$ArrayList实例。

因此,如果我们必须只有一个 ArrayList,那么以下面的方式为 Arrays.asList()实例创建 ArrayList

marks.add(new ArrayList<Integer>( Arrays.asList(10, 20, 30) ));

使用 Arrays.asList() 从数组初始化数组列表

ArrayList<String> names = new ArrayList<String>( Arrays.asList("A", "B", "C") );
System.out.println(names);

程序输出:

[A, B, C]
日期:2020-09-17 00:09:22 来源:oir作者:oir