Java:创建List的同时添加元素

郎家岭伯爵 2023年09月01日 233次浏览

前言

在 Java 语言中,创建 List 的同时添加元素的实现。

实现

方式一

我们可以用 Java 8Stream API 的方式来实现:

// 整数型
Stream.of(1,2).collect(Collectors.toList());

// 字符串型
Stream.of("lang", "jia", "ling").collect(Collectors.toList());

注:

  • 这种方式创建的 List 是可变的

方式二

List<String> list = Arrays.asList("apple", "banana", "orange");

注:

  • 这种方式创建的 List 是可变的但固定大小的 List。即创建之后可以修改元素的值,但不可添加或删除元素。

方式三

使用 Java 9 引入的 List.of() 方法,该方法是用于创建不可变的列表immutable list)。

List<Map<String, Object>> list = List.of(
                Map.of("key", 10),
                Map.of("key", 5),
                Map.of("key", 25),
                Map.of("key", 30),
                Map.of("key", 50));

拓展

但使用如下方式时,创建出来的 List 是可变的:

List<Map<String, Object>> list = new ArrayList<>(List.of(
                Map.of("key", "10"),
                Map.of("key", "5"),
                Map.of("key", "25"),
                Map.of("key", "30"),
                Map.of("key", "50")));

尽管初始 List.of() 方法创建的 List 是不可变的,但在将其传递给 ArrayList 的构造函数时,会生成一个新的ArrayList对象,该对象是可变的。

总结

在 Java 中实现创建 List 的同时添加元素。

捐赠页面示例