Arrays.asList方法遇到的问题

Posted 水军

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Arrays.asList方法遇到的问题相关的知识,希望对你有一定的参考价值。

在使用Arrays.asList(T...a)方法时,遇到了

java.lang.UnsupportedOperationException  异常。

 

后来发现,该方法返回的类型是Arrays$ArrayList,即Arrays类的内部类ArrayList,而非集合中的ArrayList。

Arrays$ArrayList继承了AbstractList但没有重写remove,add等方法,因此跟随父类默认抛出java.lang.UnsupportedOperationException。

而集合中的ArrayList重写了这类方法。

 

解决方法:将Arrays.asList 转换为集合ArrayList :new ArrayList<T>(Arrays.asList(T...a))

以上是关于Arrays.asList方法遇到的问题的主要内容,如果未能解决你的问题,请参考以下文章

使用Arrays.asList的优点和缺点

Arrays.asList()的踩坑

coding++:Arrays.asList() - java.lang.UnsupportedOperationException异常处理

Java -- Arrays.asList()方法

Arrays.asList() 不能正常工作?

使用 Arrays.asList() 初始化列表的最佳方法是啥[重复]