Java 为什么ArrayList中的set方法不更新modCount?
modCount跟踪列表更改了多少次。 那么为什么set方法不更新它呢? 这里是来自JDK1.7的参考Java 为什么ArrayList中的set方法不更新modCount?,java,arraylist,collections,Java,Arraylist,Collections,modCount跟踪列表更改了多少次。 那么为什么set方法不更新它呢? 这里是来自JDK1.7的参考 public E set(int index, E element) { rangeCheck(index); E oldValue = elementData(index); elementData[index] = element; return oldValue; } 编辑:如果这个概念还没有到位,并且我们从列表中删除/修改了它,那么循环就不会出
public E set(int index, E element) {
rangeCheck(index);
E oldValue = elementData(index);
elementData[index] = element;
return oldValue;
}
编辑:如果这个概念还没有到位,并且我们从列表中删除/修改了它,那么循环就不会出错。此概念的目标是对循环强制执行单一责任原则,并防止用户犯下他们可能没有意识到的罪行
此列表在结构上被修改的次数。结构修改是指那些改变列表大小的修改,或者以某种方式干扰列表,使得正在进行的迭代可能产生不正确的结果
更改列表中的现有插槽不会导致结构更改。换句话说,它不会像添加或删除迭代器那样干扰现有迭代器 简言之,它不统计现有节点中的更改,而是统计其更改操作的数量(在这些操作之后,list.size()调用将显示不同的结果) 长见