常见Map实现类的区别 Java

Java中,Map的实现类,常见的有HashMap,TreeMap,LinkedHashMap,HashTable,ConcurrentHashMap。这几种实现类的共同点是:

当增加已存在的key-value时,value会覆盖。相同的key,只能有一个。

他们的区别如下:

  是否排序 是否允许为null 是否线程同步 备注
HashMap 不排序 key和value允许为null 不同步  
TreeMap 按照key升序排列 key不允许为null 不同步  
LinkedHashMap 按照记录插入顺序排列 key和value都不允许为null 不同步  
HashTable 不排序 key和value都不允许为null 同步 线程同步,但效率低,不推荐使用
ConcurrentHashMap     同步 线程同步时,推荐使用该类型
发布了23 篇原创文章 · 获赞 1 · 访问量 4276

猜你喜欢

转载自blog.csdn.net/michiko98/article/details/104663641