大家好,又见面了,我是你们的朋友全栈君。
问题描述:对于给定的如下数组,如何转换成List集合?
String[] array = {"a","b","c"};参考stackoverflow总结如下几种写法:
1.使用原生方式,拆分数组,添加到List
List<String> resultList = new ArrayList<>(array.length);
for (String s : array) {
resultList.add(s);
}2.使用Arrays.asList()
List<String> resultList= new ArrayList<>(Arrays.asList(array));Arrays.asList()时,其返回值类型是ArrayList,但此ArrayList是Array的内部类,调用add()时,会报错:java.lang.UnsupportedOperationException,并且结果会因为array的某个值的改变而改变,故需要再次构造一个新的ArrayList。3.使用Collections.addAll()
List<String> resultList = new ArrayList<>(array.length);
Collections.addAll(resultList,array);4.使用List.of()
Java9新增方法,定义在List接口内,并且为静态方法,故可以由类名直接调用。List<String> resultList = List.of(array);原链接:https://stackoverflow.com/questions/157944/create-arraylist-from-array
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/172285.html原文链接:https://javaforall.cn