Java数组转为List
Posted dkbnull
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java数组转为List相关的知识,希望对你有一定的参考价值。
在开发过程中,有时会遇到需要将数组转化为List的情况,如果不对转化后数据进行增、删操作,仅读取数据,可直接使用Arrays.asList()转化
String[] values = "1", "2", "3";
List<String> list = Arrays.asList(values);
System.out.println(list);
System.out.println(list.get(0));
输出结果如下:
[1, 2, 3]
1
但如果需要插入、删除数据时,直接对其操作会报java.lang.UnsupportedOperationException异常,这是因为Arrays.asList()转化的ArrayList并不是java.util.ArrayList,而是Arrays的内部类ArrayList,这两个ArrayList都继承AbstractList,但是Arrays的内部类ArrayList没有重写AbstractList的add和remove方法
所以,如果需要插入、删除数据时,可再转化一下,获得java.util.ArrayList
String[] values = "1", "2", "3";
List<String> list = new ArrayList<>(Arrays.asList(values));
System.out.println(list);
System.out.println(list.get(0));
list.add("4");
System.out.println(list);
list.remove("3");
System.out.println(list);
输出结果如下:
[1, 2, 3]
1
[1, 2, 3, 4]
[1, 2, 4]
以上是关于Java数组转为List的主要内容,如果未能解决你的问题,请参考以下文章