我试图按开始时间排序时间跨度列表(用Time []数组表示开始时间和结束时间)。我尝试使用下面的嵌套循环可以这样做:ConcurrentModificationException?
for (Time[] span : workingList){
Time[] compareTo = workingList.get(0);
for (Time[] inSpan : workingList){
if (inSpan[0].before(compareTo[0])){
compareTo = inSpan;
}
}
workingList.remove(compareTo);
toReturn.add(compareTo);
}
}
但在该行for (Time[] span : workingList)
(一个在顶部)抛出一个java.util.ConcurrentModificationException
。我以前从未见过这个例外,有人可以向我解释它的含义和原因。
我也接受更好的算法建议。
供将来参考:当您有关于例外的问题时,您可以随时查阅文档。如果你谷歌“_Java 7 ConcurrentModificationException_”,第一个结果会带你到文档。如果您阅读该页面顶部的概述,它将解释这种确切的情况。 – jahroy 2013-03-16 01:15:30