ArrayList 是线程不安全的,add()方法并没有加锁
(synchronized),多线程环境下会抛出
ConcurrentModificationException
解决方案:
� 使用 Vector 类(使用了 synchronized),效率极低
� 使用 Collections.synchronizedList(new ArrayList<>()):内部直接将接受的 List 对
象 传 递 给 静 态 内 部 类 SynchronizedList 对 象 , 然 后
Collections.synchronizedList(new ArrayList<>())返回的 List 对象的调用方法都是
直接调用输入 List 对象的方法,但是加了 synchronized,类似装饰器模式,也是对
输入 List 的一种增强:
package com.raicho.mianshi.mycollection;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.UUID;
/**
* @author: Raicho
* @Description:
* @program: mianshi
* @create: 2020-07-17 15:32
**/
评论0
最新资源