List接口一行初始化ArrayList
初始化ArrayList时,开发者经常面临可读性和效率之间的抉择。传统方法涉及创建一个空的 ArrayList 并手动添加元素,如第一个代码片段所示。但是,对于大型列表,这种方法可能会变得很麻烦。
更简洁的替代方法是使用 Arrays.asList 方法,如第二个代码片段所示。此方法接受一个元素数组并返回一个包含这些元素的不可变列表。然后可以将此列表分配给 ArrayList,如第三个代码片段中所示。
但是,在某些情况下使用列表可能更有利。与 ArrayList 相比,列表提供了更通用的接口,并且也可以在一行中初始化。要直接初始化 List,可以使用 Arrays.asList 方法或 Collections.singletonList 方法。前者创建一个不可变的 List,而后者创建一个包含单个元素的 List。
例如:
List<String> places = Arrays.asList("Buenos Aires", "Córdoba", "La Plata");
List<String> places = Collections.singletonList("Buenos Aires");
请注意,List 是不可变的,这意味着任何尝试修改它们将导致异常。要从 List 创建可变的 ArrayList,可以使用以下语法:
ArrayList<String> places = new ArrayList<>(Arrays.asList("Buenos Aires", "Córdoba", "La Plata"));
不要忘记导入必要的包:
import java.util.Arrays; // or import java.util.Collections;
这样,就可以以简洁高效的方式使用元素列表初始化 ArrayList。使用 ArrayList 还是 List 的选择取决于应用程序的具体要求。
以上是如何使用一行代码在 Java 中初始化 ArrayList?的详细内容。更多信息请关注PHP中文网其他相关文章!