ConcurrentModificationException 并发修改异常

发布时间 2023-07-27 13:59:38作者: Rover20230226
package com.heima.day01;

import java.util.ArrayList;

public class Demo {
    public static void main(String[] args) {

        ArrayList<String> arrayList = new ArrayList();
        arrayList.add("a1");
        arrayList.add("a2");
        arrayList.add("a3");
        arrayList.add("a4");
        arrayList.add("a5");
        arrayList.add("a6");

        for (String s : arrayList) {
            if (s.equals("a2")) {
                arrayList.remove(s);
            }
        }
    }
}

Exception in thread "main" java.util.ConcurrentModificationException

 

原因:集合在做遍历时是不能做任何修改的,因为它无法确定删除完元素后是位移呢还是要先去自动遍历呢