《分布式 Java 应用:基础与实践》第四章总结其一:集合类
ArrayList: 非线程安全LinkedList: 非线程安全
Vector: 用 synchronized 实现的线程安全的 ArrayListStack: 继承自 Vector
HashSet: 非线程安全。其实是用HashMap实现的,一个HashSet<E>的内部包含一个HashMap<E,Object>,但是 map 的 value 是没有作用的,永远是这个 dummy object
// Dummy value to associate with an Object in the backing Map
private static final Object PRESENT = new Object(); 
- 
    
HashMap: 非线程安全,且多线程下,get()有可能导致 high CPU。多线程下请使用ConcurrentHashMap TreeMap: 非线程安全,排序是一个红黑树实现Hashtable:HashMap的历史版本,功能不及HashMap,但是是线程安全的
留下评论