-
一段在 for-each 循环里直接 remove 元素的 Java 代码,跑起来就抛 ConcurrentModificationException,我和快速失败机制正面撞上了:一次集合遍历删除的深度复盘
一段单线程的 for-each 遍历 ArrayList、在循环里 remove 满足条件的元素,一运行就抛 ConcurrentModificationException——可明明是单线程,哪来的并发?根因是增强 for 底层用迭代器遍历,迭代器有 fail-fast 机制:记录集合的 modCount,每步检查它有没有被改;而 list.remove 绕过迭代器直接改集合让 modCount …- 0
- 0
ArrayList
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!

