首页 > 编程语言 > 详细

数组如何转换成List集合

时间:2019-09-25 16:38:30      阅读:98      评论:0      收藏:0      [点我收藏+]

问题描述:对于给定的如下数组,如何转换成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,但此ArrayListArray的内部类,调用add()时,会报错:java.lang.UnsupportedOperationException,并且结果会因为array的某个值的改变而改变,故需要再次构造一个新的ArrayList
  • 注意:Arrays.asList(char[])将转为List<char[]>,因为要求参数为T变长数组,char不是T,同理int[]数组也不行,你必须要用Integer[]

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);

数组如何转换成List集合

原文:https://www.cnblogs.com/helloworldmybokeyuan/p/11585205.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!