大家好,又见面了,我是你们的朋友全栈君。
1、Arrays.asList(strArray) 方式 将数组转换List后,不能对List增删,只能查改,否 则抛异常。此时是java.util.Arrays.ArrayList 这里面有java.util.Arrays里面的内部类,里面没有重写增删方法,就会调用父类的AbstractList,可以看到父类的增删方法,就会报错,即使调用iterator也会报错。
代码语言:javascript复制 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
代码语言:javascript复制 int [] arr={1,2,3};
List<Integer> collect = Arrays.stream(arr).boxed().collect(Collectors.toList());
代码语言:javascript复制 String[] arr={“1”,”2”};
List<String> collect = Arrays.stream(arr).collect(Collectors.toList());
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/147676.html原文链接:https://javaforall.cn