java中的list删除不可用for循环进行操作,否则可能会出现报错,应该使用Iterator接口进行删除操作
示例代码

package list;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/**
 * 关于list的iterator的用法
 */
public class ListIterator {
    public static void main(String[] args) {
        List<Integer> list = new ArrayList<>();
        list.add(1);
        list.add(2);
        list.add(3);
        System.out.println(list.size());
        Iterator iter = list.iterator();
        while(iter.hasNext()){
            System.out.println(iter.next());
            iter.remove();
        }
        System.out.println(list.size());
    }
}

应该要使用迭代器来进行数据删除。