数组转成集合的误区

Posted xingmeng520

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组转成集合的误区相关的知识,希望对你有一定的参考价值。

 当需要把Array转成ArrayList的时候,开发人员经常这样做:

 1 List<String> list =Arrays.asList(arr); 

Arrays.asList()会返回一个ArrayList,但是这里要注意了,这个ArrayList是Arrays类的静态内部类,并不是java.util.ArrayList类。
java.util.Arrays.ArrayList类实现了set()方法,get()方法,contains()方法,但是并没有实现增加元素的方法(实际上可以调用add方法,但是没有实现,在方法里是直接抛出UnsupportedOperationException异常),
因此它的大小也是固定不变的,为了创建一个真正的java.util.ArrayList,你可以这样做:、

 1 List<String> list=new ArrayList<String>(Arrays.asList(arr)); 

ArrayList的构造方法可以接收一个Conllection类型,而java.util.Arrays.ArrayList已经实现了该接口。

以上是关于数组转成集合的误区的主要内容,如果未能解决你的问题,请参考以下文章

集合或数组转成String字符串

数组集合转成json格式

set转成toarray()

如何将List集合转换成String的数组?

如何将List集合转换成String的数组?

Map工具类