List集合在使用迭代器循环的过程中是不能做移除或者新增的,(本文拿新增举例,删除同理) 如图所示 原因: 程序在使用迭代器循环的过程中执行了add()操作导致集合的内部已经加入了add()的数据 如图位置: 当程序在此执行到for循环的条件lists时和上次循环的判断条件已经改变了,导致程序报错: 如图所示 解决方案: 不适用迭代器循环,提前获取集合的数组size用于做循环的判断条件:如图所示 注:本文例子只用于举例说明List集合迭代过程中的增加和删除,不考虑添加业务逻辑。