成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

對比 HashMap,HashTable,TreeMap區別?很多人不知道

開發 前端
HashMap實現了Map接口,繼承AbstractMap,它是基于哈希表的 Map 接口的實現。

[[376037]]

本文轉載自微信公眾號「程序員漫畫編程」,作者程序職場 。轉載本文請聯系程序員漫畫編程公眾號。   

01概念

HashMap

HashMap實現了Map接口,繼承AbstractMap,它是基于哈希表的 Map 接口的實現。

HashMap是引用數據類型。

Hashtable

Hashtable:是Map接口的另外一個實現類,和HashMap用法類似,同時也有區別。

treeMap

TreeMap:基于紅黑樹(Red-Black tree)的 NavigableMap實現。該映射根據其鍵的自然順序進行排序,或者根據創建映射時提供的Comparator進行排序,具體取決于使用的構造方法。

02區別

1. HashTable的方法是同步的,HashMap未經同步,所以在多線程場合要手動同步HashMap這個區別就像Vector和ArrayList一樣。

2. HashTable不允許null值,key和value都不可以,HashMap允許null值,key和value都可以。

3. HashTable有一個contains(Object value)功能和containsValue(Object value)功能一樣。

4. HashTable使用Enumeration,HashMap使用Iterator。

5. HashTable中hash數組默認大小是11,增加的方式是 old*2+1。HashMap中hash數組的默認大小是16,而且一定是2的指數。

6. 哈希值的使用不同,HashTable直接使用對象的hashCode。

7,這三個都對Map接口進行了實現

03安全性

1.HashMap是不安全的線程,他允許Key值出現一次null Value值出現無數次的Null

2.Hashtable是安全的線程,他不僅實現了Map接口也實現了Dictionary接口,他的key值與Value值都不允許出現Null

3.treeMap 非線程安全 可以進行排序的,默認按照鍵的自然順序進行升序排序,若要進行降序排序則需要在構造集合時候傳遞一個比較器。

04關系圖

05實例應用

  1. class  HashMaps    
  2. {    
  3.        public static void main(String[] args)     
  4.       {    
  5.             Map map=new HashMap();                
  6.             map.put(“a”, “aaa”);    
  7.             map.put(“b”, “bbb”);    
  8.             map.put(“c”, “ccc”);    
  9.             map.put(“d”, “ddd”);    
  10.             Iterator iterator = map.keySet().iterator();                
  11.             while (iterator.hasNext()) {    
  12.              Object key = iterator.next();    
  13.              System.out.println(“map.get(keyis :”+map.get(key));    
  14.             }          
  15.                    
  16.  
  17.             Hashtable tab=new Hashtable();                
  18.             tab.put(“a”, “aaa”);    
  19.             tab.put(“b”, “bbb”);    
  20.             tab.put(“c”, “ccc”);    
  21.             tab.put(“d”, “ddd”);    
  22.             Iterator iterator_1 = tab.keySet().iterator();    
  23.             while (iterator_1.hasNext()) {    
  24.              Object key = iterator_1.next();    
  25.              System.out.println(“tab.get(keyis :”+tab.get(key));    
  26.             } 
  27.  
  28.  
  29.             TreeMap tmp=new TreeMap();                
  30.             tmp.put(“a”, “aaa”);    
  31.             tmp.put(“b”, “bbb”);    
  32.             tmp.put(“c”, “ccc”);    
  33.             tmp.put(“d”, “ddd”);    
  34.             Iterator iterator_2 = tmp.keySet().iterator();    
  35.             while (iterator_2.hasNext()) {    
  36.              Object key = iterator_2.next();    
  37.              System.out.println(“tmp.get(keyis :”+tmp.get(key));    
  38.             }             
  39.         }    
  40.     } 
責任編輯:武曉燕 來源: 程序員漫畫編程
相關推薦

2020-06-29 08:28:36

v-for 解構函數

2015-07-22 11:53:29

云計算AWS分析癱瘓

2020-07-14 08:43:54

VueHTML函數

2021-08-24 00:13:23

Windows 10Windows微軟

2019-01-07 09:27:39

2022-12-05 15:23:33

JavaScript技巧運算符

2021-08-27 10:03:12

人工智能AI

2020-11-20 06:13:04

Like %

2020-07-07 08:35:53

VueKey組件

2020-07-01 08:36:43

CSS規范web

2019-12-13 19:52:29

人工智能AI

2018-08-10 10:36:25

SSL證書誤區

2023-06-05 08:07:34

聚集索引存儲數據

2021-01-07 05:27:20

包導入變量

2021-01-12 12:33:20

Pandas技巧代碼

2021-05-08 23:19:25

微信存儲小程序

2021-11-02 19:14:58

Spring數據

2019-03-25 15:21:42

瀏覽器 Edge 微軟

2022-06-23 13:13:36

GitHub開發技巧

2025-04-16 07:06:43

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕国产 | 亚洲www啪成人一区二区麻豆 | 国产一级片 | 国产精品久久久久久亚洲调教 | 狠狠色综合网站久久久久久久 | 欧美三级电影在线播放 | 成人免费网站www网站高清 | 伊人春色成人 | 国产成人免费视频网站视频社区 | 久久69精品久久久久久久电影好 | 亚洲欧美视频 | 久久躁日日躁aaaaxxxx | 日本不卡一区 | 日韩精品久久 | 一区二区三区四区电影 | 69性欧美高清影院 | 欧美不卡一区 | 国产成人精品一区 | 中文字幕av高清 | 天堂视频中文在线 | 人人干人人干人人干 | 91精品国产综合久久久久久 | 日韩精品一区二区不卡 | 欧美视频日韩 | 精品亚洲一区二区 | 欧美成年人视频在线观看 | 欧美一级大片免费看 | 日本一区二区不卡 | 久久久久国产一区二区三区四区 | 久久国产电影 | 国产精品免费一区二区三区四区 | 久久久99精品免费观看 | 国产永久免费 | 91豆花视频 | 欧美激情欧美激情在线五月 | 亚洲3级 | 麻豆91av| 欧美在线综合 | 99精品久久久 | 黄色a视频 | 欧美精品一区二区三区在线 |