楼主是 //al.add("java08");这句报的异常吧,异常名字为 java.util.ConcurrentModificationException,这是方法检测到对象的并发修改,但不允许这种修改时,抛出的异常。也就是说在迭代过程中是不允许添加元素的!但是remove是可以的!
想要在迭代过程中操作Iterator的子类ListIterator是可以完成的,我把代码修改了一下,楼主可以参考一下!
- ArrayList al = new ArrayList();
- // 添加元素
- al.add("java01");
- al.add("java02");
- al.add("java03");
- System.out.println(al);
- ListIterator it = al.listIterator();
- while (it.hasNext()) {
- Object obj = it.next();
- if (obj.equals("java02"))
- //it.remove();
- it.add("java08");
- }
- System.out.println(al);
复制代码 |