欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Arrays.asList() 不能被修改 包括add 及iterator.remove()

程序员文章站 2022-07-15 22:30:59
...

1、add()方法,直接源码截图

Arrays.asList() 不能被修改 包括add 及iterator.remove()

Arrays.asList() 创建是Arrays内部类,并没有重写 add() 方法,所以会调用到AbstractList类的 add方法,

public void add(int index, E element) {
    throw new UnsupportedOperationException();
}

2、iterator.remove,也要注意,Arrays内部类的没有实现 iterator()方法,调用父类同样是直接抛出UnsupportedOperationExcetion(),而java.util.ArrayList 重写了iterator()。

3、总结:Arrays.asList() 创建的List不支持修改,包括 增 add()、删 iterator.remove()

相关标签: 常见异常