最近在开发一个Java项目的时候遇到一个需求,需要定时触发指定任务,然后将其放入一个LinkedList中,定时去查询任务是否完成。
然后我在写代码的时候就使用了Iterator迭代器,但是从LinkedList中删除任务的时候报了java.util.ConcurrentModificationException错误。
原因是因为我在迭代的过程中直接使用了LinkedList对象的remove方法,但其实这样是不行的,Iterator中需要使用 迭代出来的元素.remove(); 方法从中移除元素。