一、使用Arrays.asList()方法
Java中可以使用Arrays类提供的asList()方法将数组转换为List。
Integer[] array = {1, 2, 3, 4, 5};
List<Integer> list = Arrays.asList(array);
转换后的List不可变,因为asList方法返回的是Arrays类内部定义的一个列表类,而不是java.util.ArrayList类。所以,如果我们尝试使用add()和remove()方法修改转换后的List,则会抛出UnsupportedOperationException异常。
二、使用Collections.addAll()方法
Collections类提供了一个addAll()方法,该方法可以将数组中的元素添加到List中。
String[] array = {"one", "two", "three", "four", "five"};
List<String> list = new ArrayList<>();
Collections.addAll(list, array);
转换后的List可以进行修改操作,因为是一个java.util.ArrayList类对象。
三、手动遍历数组
可以使用循环遍历数组中的元素,并使用List的add()方法将每个元素添加到List中。
Double[] array = {1.1, 2.2, 3.3, 4.4, 5.5};
List<Double> list = new ArrayList<>();
for (Double element : array) {
list.add(element);
}
四、使用Java 8 Stream API
Java 8 Stream API提供了一个stream()方法,可以将数组转换为Stream对象,并使用collect()方法将Stream对象转换为List。
Character[] array = {'a', 'b', 'c', 'd', 'e'};
List<Character> list = Arrays.stream(array)
.collect(Collectors.toList());
转换后的List也可以进行修改操作。
五、使用Guava库
Guava库是Google公司提供的一个Java开发工具包,其中包含了将数组转换为List的方法。
Long[] array = {1L, 2L, 3L, 4L, 5L};
List<Long> list = Lists.newArrayList(array);
转换后的List可以进行修改操作。
六、使用Java 11新增的Arrays类方法
Java 11新增的Arrays类提供了一个newList()方法,可以将数组转换为List。
Boolean[] array = {true, false, true, false, true};
List<Boolean> list = Arrays.asList(array).newList();
转换后的List可以进行修改操作。