【发布时间】:2011-06-06 04:58:43
【问题描述】:
var items = job.getItems();
for (var item in items)
job.removeItem(item);
而 CF / Java 抛出
java.util.ConcurrentModificationException 在 java.util.AbstractList$Itr.checkForComodification(AbstractList.java:372)
在没有ConcurrentModificationException 的情况下删除所有项目的最干净的方法是什么?
谢谢!
【问题讨论】:
-
使用 for 或 while 循环通过数组索引访问它们,或者如果不可能,将它们复制到临时列表中,然后遍历该列表。我不知道java(因此工作等),但我知道枚举是如何工作的:)
-
哦,仅供参考,工作只是一个 CF 组件
Job.cfc,persistent=true,不是 Java 中的东西。 -
是的,因此您接受彼得的回答是正确的。但是,您遇到的错误与从您当前正在迭代的集合中删除有关,这在 Java 中是一个更普遍的问题。他似乎说
clear方法并不总是可用的。如果您在其他情况下看到这一点,并且没有clear方法,请尝试我提到的解决方法之一。干杯:)
标签: orm coldfusion coldfusion-9