boolean group(Capital capital,Grouper grouper,int l)
{
for (Iterator it = capital.getCompositeList().iterator(); it.hasNext();)
{
Capital ct = (Capital) it.next();
if(this.group(ct,grouper, startLevel+1))
it.remove(); //为什么这一步会报java.util.ConcurrentModificationException??
}
return checkIsDel(capital,grouper);
}为什么这一步会报java.util.ConcurrentModificationException??超级郁闷了,请老鸟帮忙看看了,谢谢

解决方案 »

  1.   

    看看我的这个帖子,会对你有帮助的,当初我问过这个问题:
    关于Java API中文文档一些术语的疑问别忘了给俺分啊
      

  2.   

    我已经是用迭代器的remove()方法了....
      

  3.   

    it.remove(); 这个it并不是当前的记录啦,因为递归之后发生了变化,但是it还保留原来的对象引用,
      

  4.   


    你的这个for循环为什么没有指向下一个的啊?是不是应该这样啊?for (Iterator it = capital.getCompositeList().iterator(); it.hasNext(); it = it.next())因为我不知道你整个程序是什么样子的  我猜测的啊
      

  5.   

    他在Capital ct = (Capital) it.next();已经it.next()了