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的主要内容,如果未能解决你的问题,请参考以下文章

Java数组转为List

Java数组转为List

java怎么将list引用转为值

Java++:Json数组形式的字符串转为Map数组 Map集合的几种遍历方式

java中的lis数组转为json数据

jackson怎么将list转为json字符串