一、直接使用Arrays.asList()方法
通过Arrays.asList()方法可以非常方便地将数组转换为List。
下面是一个简单的示例:
int[] array = {1, 2, 3}; List<Integer> list = Arrays.asList(array);
需要注意的是,使用Arrays.asList()方法转换出来的List是不能进行添加或删除操作的,因为它的底层是由数组支撑的,大小是固定的。
如果需要进行添加或删除操作,可以使用ArrayList等其他类型的List。
二、使用Collections.addAll()方法
除了直接使用Arrays.asList()方法以外,还可以使用Collections.addAll()方法,将数组中的元素添加到一个已有的List中。
下面是一个示例:
int[] array = {1, 2, 3}; List<Integer> list = new ArrayList<>(); Collections.addAll(list, array);
三、使用循环逐个添加元素
如果不想使用Arrays.asList()方法或者Collections.addAll()方法,也可以通过循环逐个添加元素的方式将数组转换为List。
下面是一个示例:
int[] array = {1, 2, 3}; List<Integer> list = new ArrayList<>(); for(int i : array){ list.add(i); }
需要注意的是,使用循环逐个添加元素的方式,可能会对性能产生一定影响,因为每次添加都需要调用一次add()方法。
四、使用Java 8的Stream API
在Java 8中,可以使用Stream API将数组转换为List。
下面是一个示例:
int[] array = {1, 2, 3}; List<Integer> list = Arrays.stream(array).boxed().collect(Collectors.toList());
需要注意的是,Arrays.stream()方法返回一个IntStream对象,需要使用boxed()方法将其转换为一个Stream<Integer>对象。
然后使用collect()方法将Stream转换为List。
五、总结
通过以上几种方式,可以将一个数组转换为List。其中,直接使用Arrays.asList()方法最为简便,但是需要注意该List不支持添加或删除操作。如果需要进行添加或删除操作,可以使用其他类型的List。而使用Stream API也是一种比较新颖的方式,需要注意的是,Arrays.stream()方法返回的是IntStream类型,需要转换为Stream<Integer>类型。