数据

Map接口的实现类

2016-05-22  本文已影响604人  言西枣

除了最常用的HashMap以外,还有一些常用的Map实现类,这里做一个与HashMap的对比

HashTable

LinkedHashMap

TreeMap

Collections.synchronizedMap()

将不同步的map转换为同步的map

     private static class SynchronizedMap<K,V>
        implements Map<K,V>, Serializable {
        private static final long serialVersionUID = 1978198479659022715L;

        private final Map<K,V> m;     // Backing Map
        final Object      mutex;        // Object on which to synchronize
        // .......
}

关键在于包装了原来的集合对象,添加了一个用于同步的对象,在实现Map的所有方法的时候,内部都要先获取mutex对象的锁,以此同步。

ConcurrentHashMap

上一篇 下一篇

猜你喜欢

热点阅读