首页 > 其他 > 详细

for循环中使用remove方法。

时间:2016-03-02 10:55:52      阅读:300      评论:0      收藏:0      [点我收藏+]
List<String> list =new ArrayList<String>();
        list.add("boss");
        list.add("good");
        list.add("No");
        list.add("Fine");
        System.out.println(list);//[boss, good, No, Fine]
        Collections.sort(list);
        System.out.println(list);//[Fine, No, boss, good]
        list.add("我们");
        list.add("你就是");
        list.add("他很调");
        list.add("明天见");
        int i=0;
        while(true){
        
        for (String dwonCountCmd : list) {
            
                if (i<30) {
                    System.out.println(dwonCountCmd+i);
                    i++;
                } else{
//在循环中把集合的一个元素移除了,如果此时不break的话,就会报错
                    list.remove(dwonCountCmd);
                    System.out.println(list.toString());
                    break;
                }
            }
        }
        

 

 

会报这种错

Exception in thread "main" java.util.ConcurrentModificationException
    at java.util.AbstractList$Itr.checkForComodification(Unknown Source)
    at java.util.AbstractList$Itr.next(Unknown Source)
    at Test2.main(Test2.java:47)

 

for循环中使用remove方法。

原文:http://www.cnblogs.com/lipeineng/p/5233667.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!