专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

map的键值对哪一个必须是唯一的_java

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/9 4:11:36       共计:3596 浏览

map的键值对哪一个必须是唯一的?

是唯一的 HashSet可以有重复的

1、HashMap:

底层数据结构是哈希表,线程不安全,允许null键和null值

2、Hashtable:

线程安全的,不允许null键和null值,效率低,给整个方法添加synchronized,太笨重

3、LinkedHashMap:

底层数据结构是链表和哈希表,由链表保证有序(存储和取出的顺序一致),哈希表保证唯一,线程不安全

4、TreeMap:

底层数据结构是红黑树(一种自平衡的二叉树),可以按照某种规则进行排序,自然排序和选择器排序,线程不安全

5、ConcurrentHashMap:

● 线程安全的,不允许null键和null值

● 对与多线程的操作,介于HashMap与Hashtable之间。

● 内部采用"锁分段"机制代替Hashtable的独占锁。进而提高性能。

【查看源码:Hashtable是给整个方法上面添加synchronized,而ConcurrentHashMap是给可能出现线程安全问题的代码用同步代码块的方式加锁】

● 获取操作(包括 get)通常不会受阻塞

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:requests是干什么的_python | ·下一条:请问学习软件开发需要多少学费_java

Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有