程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> arraylist-如下代碼,循環打印出來為什麼remove掉了4,而不是remove掉了3,求大神解釋。

arraylist-如下代碼,循環打印出來為什麼remove掉了4,而不是remove掉了3,求大神解釋。

編輯:編程綜合問答
如下代碼,循環打印出來為什麼remove掉了4,而不是remove掉了3,求大神解釋。

List list=new ArrayList();
list.add(new ForTest("1"));
list.add(new ForTest("2"));
list.add(new ForTest("3"));
list.add(new ForTest("4"));
list.add(new ForTest("5"));
list.add(new ForTest("6"));
list.add(new ForTest("7"));

    for (int i = 0; i < list.size(); i++) {
        ForTest test=list.get(i);
        if(test.getFlag().equals("3")){
            list.remove(i);
        }
        //System.out.println("循環到:"+i+",list.get(i).getFlag()="+list.get(i).getFlag());
        System.out.println("循環到:"+i+",flag="+test.getFlag());
    }
}

最佳回答:


這麼寫

 for (int i = list.size()-1; i >=0; i--)
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved