看码。。。
- import java.util.ArrayList;
- import java.util.Iterator;
- import java.util.List;
- import java.util.ListIterator;
- public class CollectionTest1 {
- public static void main(String[] args) {
- List list = new ArrayList();
- list.add( "hello");
- list.add ("world");
- // Iterator it =list.iterator();
- // while(it.hasNext()){
- // String s = (String) it.next();
- // if("hello".equals(s)){
- // list.add("IOS");
- // }
- ListIterator it =list.listIterator();
- while(it.hasNext()){
- String s = (String) it.next();
- if("hello".equals(s)){
- it.add("IOS");
- }
- }System.out.println(list);
- }
- }
复制代码
因为第一种使用List里面add方法添加元素。集合变了,而迭代器并没有修改。所以并发修改异常 |