黑马程序员技术交流社区
标题:
并发异常的问题
[打印本页]
作者:
王陶成
时间:
2012-9-8 16:57
标题:
并发异常的问题
毕老师在讲ListIterator 的时候提到了并发异常,在Iterator遍历集合元素的时候,集合再去操作元素,会发生并发异常,还用add做了实例。
但我发现在Iterator遍历集合的时候,集合调用remove就不会发生这样的异常,还操作成功了
作者:
王陶成
时间:
2012-9-8 16:57
import java.util.ArrayList;
import java.util.Iterator;
public class IteratorQuestion {
public static void main(String[] args) {
ArrayList a1 = new ArrayList();
a1.add("java01");
a1.add("java02");
a1.add("java03");
for(Iterator it = a1.iterator();it.hasNext();) {
//System.out.println(it.next());
Object obj = it.next();
if(obj.equals("java02")) {
//a1.add("java99");//ConcurrentModificationException
a1.remove("java03");
}
}
for(Iterator it = a1.iterator();it.hasNext();){
System.out.println(it.next());
}
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2