欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

map的鍵值對哪一個必須是唯一的

呂致盈2年前15瀏覽0評論

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)通常不會受阻塞

java map自動排序,map的鍵值對哪一個必須是唯一的