最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

千鋒教育Java入門全套視頻教程(java核心技術(shù),適合java零基礎(chǔ),Java

2023-07-23 23:25 作者:小丨丨天  | 我要投稿

HashMap

線程不安全的集合

數(shù)據(jù)結(jié)構(gòu):

JDK1.7:一維數(shù)組 + 單向鏈表,添加數(shù)據(jù)采用頭插法

JDK1.8:一維數(shù)組 + 單向鏈表or紅黑樹,添加數(shù)據(jù)采用尾插法

內(nèi)部屬性:

默認(rèn)初始化數(shù)組長度 - static final int DEFAULT_INITIAL_CAPACITY = 1 << 4;

數(shù)組的最大長度 - static final int MAXIMUM_CAPACITY = 1 << 30;

默認(rèn)的負(fù)載因子 - static final float DEFAULT_LOAD_FACTOR = 0.75f;

結(jié)構(gòu)由鏈表轉(zhuǎn)為紅黑樹的鏈表長度閾值 - static final int TREEIFY_THRESHOLD = 8;

結(jié)構(gòu)由紅黑樹轉(zhuǎn)為鏈表的樹的節(jié)點(diǎn)個(gè)數(shù)閾值 - static final int UNTREEIFY_THRESHOLD = 6;

結(jié)構(gòu)由鏈表轉(zhuǎn)為紅黑樹的數(shù)組長度閾值 - static final int MIN_TREEIFY_CAPACITY = 64;

底層存儲(chǔ)數(shù)據(jù)的Node<K,V>數(shù)組,也叫hash表/hash數(shù)組 - transient Node<K,V>[] table;

一個(gè)Set集合,存放entry - transient Set<Map.Entry<K,V>> entrySet;

元素個(gè)數(shù)(鍵值對(duì)個(gè)數(shù))- transient int size;

外部操作數(shù) - transient int modCount;

擴(kuò)容閾值 - int threshold;

計(jì)算擴(kuò)容閾值的負(fù)載因子 - final float loadFactor;

構(gòu)造方法:

無參構(gòu)造:簡單初始化數(shù)據(jù),并將負(fù)載因子賦值為默認(rèn)負(fù)載因子

兩個(gè)參數(shù)的構(gòu)造器(int a, float b):判斷參數(shù)的合法性,a不能小于0,a不能大于數(shù)組的最大長度,b不能小于等于0,b不能是NaN(Not a Number 非數(shù)字),如果a是二的冪,則將數(shù)組長度賦值為a,否則就通過算法,將數(shù)組長度賦值為大于a并且最靠近a的2的冪

一個(gè)參數(shù)的構(gòu)造器(int a):直接調(diào)用兩個(gè)參數(shù)的構(gòu)造器,傳入 a 和默認(rèn)的負(fù)載因子

一個(gè)參數(shù)的構(gòu)造器(Map m):將負(fù)載因子賦值為默認(rèn)負(fù)載因子,將傳入的Map集合的映射關(guān)系取出并存入hash表中

擴(kuò)容機(jī)制:

當(dāng)數(shù)組中的元素個(gè)數(shù)(映射關(guān)系個(gè)數(shù))達(dá)到閾值的時(shí)候并且添加元素的數(shù)組的位置有元素時(shí),進(jìn)行擴(kuò)容,每次擴(kuò)容為原來的兩倍

JDK1.8特有:當(dāng)數(shù)組中存在長度大于8的鏈表,并且數(shù)組長度小于64的時(shí)候,會(huì)進(jìn)行擴(kuò)容,也是按兩倍擴(kuò)容

樹和鏈表的轉(zhuǎn)換閾值

鏈表 ---> 樹:數(shù)組長度大于64,數(shù)組中存在長度大于8的鏈表

樹 ---> 鏈表:數(shù)組中樹的節(jié)點(diǎn)數(shù)小于6

千鋒教育Java入門全套視頻教程(java核心技術(shù),適合java零基礎(chǔ),Java的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
广灵县| 沂南县| 德格县| 涟源市| 高平市| 梁山县| 饶平县| 阿拉尔市| 梨树县| 若尔盖县| 贵南县| 花莲市| 伊金霍洛旗| 吉木乃县| 河西区| 泊头市| 五大连池市| 宝丰县| 宁明县| 延长县| 华宁县| 富宁县| 永平县| 旺苍县| 东安县| 滕州市| 青冈县| 曲阳县| 大姚县| 揭西县| 宁远县| 南安市| 邮箱| 昌都县| 兴宁市| 余江县| 库尔勒市| 酉阳| 汝南县| 买车| 老河口市|