public class ArrayListTestTwo { public static void main(String[] args) { //判断集合中是否有“world”这一元素,有则添加“javaee” List list = new ArrayList(); list.add("hello"); list.add("world"); list.add("java"); //以下出现迭代器并发修改异常 ConcurrentModificationException //迭代器时依赖于集合存在的, //迭代器遍历元素时,不允许同时让集合修改元素 /* Iterator it= list.iterator(); while(it.hasNext()){ String s=(String) it.next(); if(s.equals("world")){ list.add("javaee"); } } */ //解决方案: // 1 迭代器遍历元素,迭代器修改元素,而Iterator没有添加功能,所以只能使用其子接口ListIterator,元素跟在刚才迭代的元素后 // 2 集合遍历元素,集合修改元素(普通for),元素在最后添加 /* ListIterator lst = list.listIterator(); while (lst.hasNext()) { String s = (String) lst.next(); if (s.equals("world")) { lst.add("javaee"); } } */ for (int i = 0; i < list.size(); i++) { String s=(String) list.get(i); if(s.equals("world")){ list.add("javaee"); } } System.out.println(list); } }
ArrayList
最新推荐文章于 2024-10-17 10:27:13 发布