List<Integer> list=new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
for (Integer integer : list) {
if(integer==3){
list.remove(integer);
}以上这段代码不报错,但是 List<Integer> list=new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
for (Integer integer : list) {
if(integer==3){
list.remove(integer);
}
}这段代码会报错,为什么

解决方案 »

  1.   

    其实都报错。for增强。。迭代器遍历检测到迭代器和list里面的count不一致,所以报错了
      

  2.   


     List<Integer> list=new ArrayList<Integer>();
            list.add(1);
            list.add(2);
            list.add(3);
            list.add(4);
            for (Integer integer : list) {
                if(integer==2){
                    list.remove(integer);
                }
            }手划了下  这个是报错的
      

  3.   

    额 我晕,,  不应该是foreach么?  没仔细看!!
      

  4.   

    刚才看了下  会报java.util.ConcurrentModificationException这样的错
    在网上收一下有解释
      

  5.   

        List<Integer> list=new ArrayList<Integer>();
            list.add(1);
            list.add(2);
            list.add(3);
            list.add(4);
            for (Integer integer : list) {
                if(integer==2){
                    list.remove(integer);
                    break;
                }
            }
    这样就不会报错了
      

  6.   

    list没有被remove之前modCount为5,remove之后modCount为6,因为这两个一致就抛出了一个runtimeException。不清楚modCount的作用是什么,求解
      

  7.   


                    List<String> strList  =new ArrayList<String>();
    strList.add("1");
    strList.add("2");
    strList.add("3");
    strList.add("4");
    for(String data:strList){
    if("3".equals(data)){
    strList.remove(data);//remove之前strList的modCount为4,remove之后modCount为5  remove之后没有报错
    }
    }List<Integer> list=new ArrayList<Integer>();
            list.add(1);
            list.add(2);
            list.add(3);
            list.add(4);
            for (Integer integer : list) {
                if(integer==2){
                    list.remove(integer);//remove之前strList的modCount为4,remove之后modCount为5 remove之后报错 
                }
            }各种不明白,求解
      

  8.   

    http://blog.csdn.net/hanzhen143437/article/details/5567067
    这里有解释。看着解释还不错