国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

java的集合對比----Map

2019-11-15 00:51:26
字體:
來源:轉載
供稿:網友
java的集合對比----Map

java集合另一個大接口就是Map,與Collection最大的不同就是,Collection存儲的是一個對象,而Map存儲的是一對對象,即key—Value的形式存儲,key是不能重復的。能把Map實例化的類有4個: HashMap,Hashtable,WeakHashMap,TreeMap。

Map的遍歷,是先通過entrySet()獲取他set集合,同理,keySet()獲取他的key的set集合,values()獲取他的value的set集合,再通過set集合取Iterator進行遍歷。

HashMap

他有Map的所有特性,key 和 value 都是可以為null的。不是線程安全的,如果key重復了,那么后一個key的value會覆蓋前一個key的value,反正保存的集合中,key是不會有重復的。他有個初始容量(16) 和加載因子(默認為0.75),他有一個閾值(初始容量 * 加載因子),如果size超過這個閾值,那么容量就 x 2。

Hashtable

感覺他和HashMap差不多,Hashtable 的初始容量是11,每次size增加 x2 +1個。key和value都不能為null, 他的線程安全的。他的遍歷順序和HashMap是反的,HashMap是從前向后,而Hashtable是從后向前。他多了一種遍歷方式,Enumeration。

TreeMap

感覺他就是一個key有順序的key-value集合,他的key不能是null,value可以。他也不是線程安全的。

WeakHashMap

他和HashMap差不多,但是他的鍵是弱鍵,會被GC回收。

最后,若想把線程不安全的集合變成安全的,用 Collections.synchronizedMap,Collections.synchronizedSet,Collections.synchronizedList函數是一種解決辦法。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 青铜峡市| 凤台县| 确山县| 稷山县| 仙游县| 庆城县| 遂川县| 岳西县| 密山市| 天长市| 明溪县| 呼伦贝尔市| 五指山市| 滁州市| 吴川市| 呼图壁县| 休宁县| 宁都县| 武陟县| 灌云县| 云龙县| 资溪县| 晋州市| 哈尔滨市| 三原县| 阿拉善左旗| 政和县| 阳东县| 个旧市| 应用必备| 武夷山市| 十堰市| 祁东县| 瑞昌市| 漾濞| 大悟县| 华阴市| 新乐市| 永吉县| 星子县| 徐水县|