HashMap的modCount

modCount用于记录HashMap的修改次数,
在HashMap的put(),get(),remove(),Interator()等方法中,都使用了该属性

由于HashMap不是线程安全的,所以在迭代的时候,会将modCount赋值到迭代器的expectedModCount属性中,然后进行迭代,
如果在迭代的过程中
HashMap被其他线程修改了,modCount的数值就会发生变化,
这个时候
expectedModCount和ModCount不相等,
迭代器就会抛出ConcurrentModificationException()异常

参考了https://blog.csdn.net/u012926924/article/details/50452411

你可能感兴趣的:(HashMap的modCount)