本帖最后由 java陈辉 于 2013-12-14 18:10 编辑  
 
下面这段代为什么在for循环里面加上一个i--之后,就能完全删除掉abc?不加i--,就删除不掉?求解释。 
public class Test { 
 
                 public static void main(String[] args) { 
                ArrayList<String> al = new ArrayList<String>(); 
                al.add("abc1"); 
                al.add("abc"); 
                al.add("abc"); 
                al.add("abc"); 
                 
 
              for(int i=0; i<al.size(); i++){ 
                        if("abc".equals(al.get(i))){ 
                                al.remove(i); 
                                i--;         //这里为什么要加一个i--之后,能把abc完全删除掉 
                        } 
                } 
                         
                System.out.println(al); 
 
        } 
 
} 
 
 |