1、Arrays.asList(strArray) 方式
将数组转换List后,不能对List增删,只能查改,否 则抛异常。此时是java.util.Arrays.ArrayList 这里面有java.util.Arrays里面的内部类,里面没有重写增删方法,就会调用父类的AbstractList,可以看到父类的增删方法,就会报错,即使调用iterator也会报错。
public void add(int index, E element) {
throw new UnsupportedOperationException();
}
public E remove(int index) {
throw new UnsupportedOperationException();
}
2、ArrayList的构造器
将Arrays.asList(strArray)的返回值由java.util.Arrays.ArrayList 转为java.util.ArrayList。
关键代码:ArrayList list = new ArrayList(Arrays.asList(strArray)) ;
3、集合工具类Collections.addAll()方法
通过Collections.addAll(arrayList, strArray)方式转换,根据数组的长度创建一个长度相同的List,然后通过Collections.addAll()方法,将数组中的元素转为二进制,然后添加到List中,这是最高效的方法。
4.使用spring
Int[] a={1,2,3};
List list=CollectionUtils.arrayToList(a);
5.使用java 8
int [] arr={1,2,3};
List<Integer> collect = Arrays.stream(arr).boxed().collect(Collectors.toList());
- 1
- 2
String[] arr={“1”,”2”};
List<String> collect = Arrays.stream(arr).collect(Collectors.toList());