1、Vector——>ArrayList
2、Hashtable——>HashMap
3、Collections集合中——>synchronizedXXX
ArrayList<Object> list = new ArrayList<>(); Collections.synchronizedList(list); HashMap<Object, Object> map = new HashMap<>(); Collections.synchronizedMap(map); Set<Object> set = new HashSet<>(); Collections.synchronizedSet(set);
以synchronizedList为例:synchronizedList返回了SynchronizedList<>(list)),SynchronizedList又是一个内部静态类,该内部静态类中的add()、set()、get()等方法都在方法内部添加了synchronized关键字,如下图:
1、CopyOnWriteArrayList
2、ConcurrentHashMap