arraylist 为什么 删除元素时要使用迭代器而不能使用遍历

因为你要是遍历了,arraylist 的长度就变了,容易数组越界和下标问题

 

public class Test {

    public static void main(String[] args)  {
        ArrayList<Integer> list = new ArrayList<Integer>();
        list.add(2);
        Iterator<Integer> iterator = list.iterator();
        while(iterator.hasNext()){
            Integer integer = iterator.next();
            if(integer==2)
                iterator.remove();   //注意这个地方
        }
    }
}
posted @ 2018-12-06 11:35  神只吃苹果  阅读(533)  评论(0编辑  收藏  举报