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/

10-14 09:06