list
HashSet
HashMap
public static void main(String[] args) {
// Listlist=new ArrayList<>();
//解决方案1
// Listlist=new Vector<>();//jdk1.0线程同步 底层synchronized
//解决方案2
// List list = Collections.synchronizedList(new ArrayList());
//解决方案3
// List list=new CopyOnWriteArrayList<>();//juc
//
// for(int i=0;i<30;i++) {
// new Thread(()->{
//
// list.add(UUID.randomUUID().toString().substring(0, 8));
//
// System.out.println(list);//java.util.ConcurrentModificationException
//
// },i+"").start();
// }
// Set set=new HashSet();
// Set set=new CopyOnWriteArraySet();
// for(int i=0;i<30;i++) {
// new Thread(()->{
//
// set.add(UUID.randomUUID().toString().substring(0, 8));
//
// System.out.println(set);//java.util.ConcurrentModificationException
//
// },i+"").start();
// }
// Map map=new HashMap();
Map map=new ConcurrentHashMap();
for(int i=0;i<30;i++) {
String key=i+"";
new Thread(()->{
map.put(key,UUID.randomUUID().toString().substring(0, 8));
System.out.println(map);//java.util.ConcurrentModificationException
},i+"").start();
}
}



