如何避免ConcurrentModificationException?

时间:2014-06-04 06:10:58

标签: java collections

代码:

ArrayList one = new ArrayList<>();

        for(int i=1; i<=80; i++){
            one.add(i);
            if(i==40){
                for(int j=21; j<=40; j++){
                    one.add(j);
                }
            }

        }

        ArrayList abc = new ArrayList<>(one);
        System.out.println(abc);
        for(int i=0; i<one.size(); i++){

            if(i==20){
                System.out.println(one.subList(i, i+20).size());
                List<Integer> bb = one.subList(i, i+20);
                System.out.println(bb);
                ListIterator<Integer> lt= bb.listIterator();
                while(lt.hasNext()){
                    int ind = one.indexOf(lt.next());
                    one.remove(ind);
                }
            }
        }

由于快速迭代器失败,我是否面临此问题?从主列表中删除一组数字(20到40)的解决方案是什么? (只有第一次出现)?

0 个答案:

没有答案