可以通过直接使用 Arrays.asList() 方法、使用 List.of() 方法或使用 Stream.of() 和 Collectors.toList() 方法将 Java 数组转换为 List。Arrays.asList() 返回一个受底层数组支持的固定大小的 List,List.of() 返回一个不可变的 List,而 Stream.of() 和 Collectors.toList() 可以将数组中的元素逐一收集到一个新的 List 中。具体选择哪种方法取决于所需 List 的类型和可

如何将 Java 数组转换为 List
直接转换:
使用 Arrays.asList() 方法直接将数组转换为 List,该方法返回一个受底层数组支持的固定大小的 List。
int[] arr = {1, 2, 3, 4, 5};
List list = Arrays.asList(arr); 注意:
立即学习“Java免费学习笔记(深入)”;
- 由于底层数组的固定大小,无法向
list中添加或删除元素。 - 该方法返回的是一个
List,需要使用类型转换将其转换为更具体类型的 List。
使用 List.of() 方法:
Java 9 引入了 List.of() 方法,可以创建不可变的 List。该方法将传递的元素逐一添加到 List 中,包括数组中的元素。
int[] arr = {1, 2, 3, 4, 5};
List list = List.of(arr); 使用 Stream.of() 和 Collectors.toList():
可以将数组转换为 Stream,然后使用 Collectors.toList() 收集元素以创建一个新的 List。
int[] arr = {1, 2, 3, 4, 5};
List list = Stream.of(arr).collect(Collectors.toList()); 选择适合您的方法:
- 如果需要一个支持底层数组修改的可变 List,请使用
Arrays.asList()。 - 如果需要一个不可变的 List,请使用
List.of()或Stream.of()。 - 如果要将数组转换为更具体类型的 List,请使用
Arrays.asList()并对其进行类型转换。











