`
yimi128
  • 浏览: 55440 次
  • 来自: ...
社区版块
存档分类
最新评论

java集合类之Arrays.asList

    博客分类:
  • JAVA
 
阅读更多

运行如下代码:

List<Integer> list = Arrays.asList(1,2,3);
list.add(4);

 报如下异常:

Exception in thread "main" java.lang.UnsupportedOperationException
    at java.util.AbstractList.add(AbstractList.java:131)
    at java.util.AbstractList.add(AbstractList.java:91)
    at com.netease.cms.logic.SitemapBase.main(SitemapBase.java:296)

 

看了一下,Arrays.asList() 返回java.util.Arrays$ArrayList, 而不是ArrayList

Arrays$ArrayList和ArrayList都是继承AbstractList, add,remove等方法在AbstractList中是默认throw UnsupportedOperationException, ArrayList override这些方法来对list进行操作,但是Arrays$ArrayList没有override这些方法,所以throw UnsupportedOperationException。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics