解决遍历迭代器时添加元素会出现异常的问题

来源:互联网 发布:淘宝卖家用什么软件好 编辑:程序博客网 时间:2024/05/23 16:08

今天在写代码时遇到了一个异常

Exception in thread "AWT-EventQueue-0" java.util.ConcurrentModificationException

上网查后发现是遍历迭代器时还有一个线程再添加元素

解决的方法是用clone()

克隆一份后在迭代

代码如下:

LinkedList<Point> pathPoints = (LinkedList<Point>) allPaths.clone();
Iterator<Point> iterator = pathPoints.iterator();
while (iterator.hasNext()) {
pathPoint = (Point) iterator.next();
g.fillOval((int) pathPoint.getX(), (int) pathPoint.getY(), 20, 20);
}


这样在向allPaths添加元素时就没有影响了。

0 0