for(PatientProcedures s: PatientProceduresList)
{
if(Num == s.getAccountNumber())
{
PatientProceduresList.remove(s);
break;
//without break it stops cause of loop
}
}
有没有办法解决?它可以解决问题,但是我需要继续,并对其余的arraylist做同样的事情。
最佳答案
为此,必须使用Iterator
。
Iterator<PatientProcedures> iterator = list.iterator();
while (iterator.hasNext())
{
PatientProcedures s = iterator.next();
if (wantToRemove)
{
iterator.remove();
}
}
这样可以避免每次循环执行
ConcurrentModificationException
时存在的for
。关于java - ArrayList是否每个for循环都删除1个以上?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15190100/