要使用特定元素初始化 ArrayList,开发人员经常面临选择最高效、最简洁方法的困境。一种广泛使用的方法是使用 new 关键字,创建一个空的 ArrayList,然后使用 add 方法添加元素。
但是,更简洁的解决方案是利用 Arrays 类上的 asList 方法。通过将一组值传递给 asList,可以创建一个不可变列表。将此列表包装在 ArrayList 构造函数中,会将其转换为支持添加和删除元素的可变列表。
例如,考虑以下代码:
ArrayList<String> places = new ArrayList<String>( Arrays.asList("Buenos Aires", "Córdoba", "La Plata"));
这种方法结合了两者的优点new 关键字和 asList 方法,允许用一行代码初始化 ArrayList。
但是还有更简单的选择吗?如果需求不是明确的 ArrayList,则可以使用 List 接口。 Arrays.asList 方法可以创建不可变列表,而无需将其包装在 ArrayList 中。
List<String> places = Arrays.asList("Buenos Aires", "Córdoba", "La Plata");
对于仅存在单个元素的场景,Collections.singletonList 方法是一个更简洁的替代方案。
List<String> places = Collections.singletonList("Buenos Aires");
使用 singletList 方法可确保不变性,这意味着任何修改结果列表的尝试都将导致 例外。对于可变列表,请考虑将不可变列表包装在 ArrayList 中。
ArrayList<String> places = new ArrayList<>(Arrays.asList("Buenos Aires", "Córdoba", "La Plata"));
请记住为此方法导入 java.util.Arrays 包。
以上是在 Java 中初始化 ArrayList 最有效的方法是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!