为什么ArrayList在使用迭代器迭代元素时不能使用List.remove()删元素,而是使用Iterator.remove()删元素

其实,我相信有一定经验的都已经知道了,把标题的“为什么”去掉读一遍,但是具体是为什么?今天本人跟进源码(jdk7)探了个究竟。注:这篇文章只介绍使用list.remove()抛出ConcurrentModificationException的原因,其它参数及异常不作介绍。 直入主题,首先我们来看下面这段出问题的代码 下面是运行结果 使用iterator.remove()是没有问题的,此处就不粘图了
相关文章
相关标签/搜索