每个for循环删除多个1的ArrayList?

时间:2013-03-03 19:53:22

标签: java

for(PatientProcedures s: PatientProceduresList)
        {

            if(Num == s.getAccountNumber())
            {
                PatientProceduresList.remove(s);
                break;
                //without break it stops cause of loop 


            }
        }

这周围有吗?它适用于休息,但我需要继续并继续对其他的arraylist做同样的事情。

1 个答案:

答案 0 :(得分:4)

为此,您必须使用Iterator

Iterator<PatientProcedures> iterator = list.iterator();

while (iterator.hasNext())
{
    PatientProcedures s = iterator.next();

    if (wantToRemove)
    {
        iterator.remove();
    }
}

这将避免每次循环执行ConcurrentModificationException时存在的for