开发者社区> 问答> 正文

HashMap 和 ConcurrentHashMap 有什么区别?

HashMap 和 ConcurrentHashMap 有什么区别?

展开
收起
叫我饭啊啊 2021-10-25 17:16:02 2359 0
1 条回答
写回答
取消 提交回答
  • 1.ConcurrentHashMap对整个桶数组进行了分割分段(Segment),然后在每一个分段上都用lock锁进行保护,相对于HashTable的synchronized锁的粒度更精细了一些,并发性能更好,而HashMap没有锁机制,不是线程安全的。(JDK1.8之后ConcurrentHashMap启用了一种全新的方式实现,利用CAS算法。)

    2.HashMap的键值对允许有null,但是ConCurrentHashMap都不允许。

    2021-10-25 17:16:25
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载