Java HashMap构造函数:一个参数搞不定,两个参数要你命
一种在Java里常用的Map实现方式, 它的底层是依靠哈希表来达成的。接下来要阐述的是, 这种实现方式的原理:
数据结构
底层存在着一个数组, 数组的每个元素都是一个链表, 也就是所谓的一个桶, 桶里面存放的是一个个 key-value 对。当桶中的链表长度超出阈值, 该阈值默认是8的时候, 链表就会转变为红黑树。
哈希函数
将 key 映射为数组下标的是哈希函数, 在其中, 所使用的为类中的 () 方法, 因为 () 方法返回值的范围属于整型, 所以要对 () 值开展转换。
解决哈希冲突
当各异的 key 通过哈希函数映射至同一桶里时, 便会出现哈希冲突, 解决此哈希冲突的方式是运用链式存储法,也就是于桶中的链表内增添新的 key - value 对。
链表长度达到或者超过阈值(默认是8)之际, 链表会自行转变为红黑树。红黑树里节点数量小于或者等于6之时, 红黑树会变回链表。
扩容机制
一旦桶里头元素的数量超出了负载因子(这个负载因子默认是0.75), 那就会开展扩容行动。扩容这项操作会把桶的数量扩充成原先的两倍, 并且会把原来的全部key-value对进行再次哈希, 然后重新分配到扩容后的桶当中。
线程安全问题
它不是线程安全的, 于多线程环境当中, 是需要开展额外的同步处理操作的。在Java 1.5之后, 是提供了解决此问题的办法的。
总而言之, 借助哈希函数把 key 映射成数组下标, 运用链式存储法去解决哈希冲突, 利用扩容机制来提升性能。要留意的是, 并非线程安全的。Csdn.tphep.cN/Article/details/81536.shtml
Csdn.tphep.cN/Article/details/71271.shtml
Csdn.tphep.cN/Article/details/15856.shtml
Csdn.tphep.cN/Article/details/84016.shtml
Csdn.tphep.cN/Article/details/14696.shtml
Csdn.tphep.cN/Article/details/22533.shtml
Csdn.tphep.cN/Article/details/46377.shtml
Csdn.tphep.cN/Article/details/60745.shtml
Csdn.tphep.cN/Article/details/64833.shtml
Csdn.tphep.cN/Article/details/09875.shtml
Csdn.tphep.cN/Article/details/02197.shtml
Csdn.tphep.cN/Article/details/00734.shtml
Csdn.tphep.cN/Article/details/15868.shtml
Csdn.tphep.cN/Article/details/71308.shtml
Csdn.tphep.cN/Article/details/87414.shtml
Csdn.tphep.cN/Article/details/30982.shtml
Csdn.tphep.cN/Article/details/30009.shtml
Csdn.tphep.cN/Article/details/91005.shtml
Csdn.tphep.cN/Article/details/14599.shtml
Csdn.tphep.cN/Article/details/56551.shtml
Csdn.tphep.cN/Article/details/10679.shtml
Csdn.tphep.cN/Article/details/17739.shtml
Csdn.tphep.cN/Article/details/34965.shtml
Csdn.tphep.cN/Article/details/62146.shtml
Csdn.tphep.cN/Article/details/06664.shtml
Csdn.tphep.cN/Article/details/24292.shtml
Csdn.tphep.cN/Article/details/38524.shtml
Csdn.tphep.cN/Article/details/16527.shtml
Csdn.tphep.cN/Article/details/56913.shtml
Csdn.tphep.cN/Article/details/56696.shtml
Csdn.tphep.cN/Article/details/15544.shtml
Csdn.tphep.cN/Article/details/77522.shtml
Csdn.tphep.cN/Article/details/61825.shtml
Csdn.tphep.cN/Article/details/85719.shtml
Csdn.tphep.cN/Article/details/70676.shtml
Csdn.tphep.cN/Article/details/49164.shtml
Csdn.tphep.cN/Article/details/97390.shtml
Csdn.tphep.cN/Article/details/25357.shtml
Csdn.tphep.cN/Article/details/76978.shtml
Csdn.tphep.cN/Article/details/40597.shtml
Csdn.tphep.cN/Article/details/70814.shtml
Csdn.tphep.cN/Article/details/58156.shtml
Csdn.tphep.cN/Article/details/95642.shtml
Csdn.tphep.cN/Article/details/97894.shtml
Csdn.tphep.cN/Article/details/97655.shtml
Csdn.tphep.cN/Article/details/95679.shtml
Csdn.tphep.cN/Article/details/42248.shtml
Csdn.tphep.cN/Article/details/87183.shtml
Csdn.tphep.cN/Article/details/55063.shtml
Csdn.tphep.cN/Article/details/05791.shtml
Csdn.tphep.cN/Article/details/04013.shtml
Csdn.tphep.cN/Article/details/92366.shtml
Csdn.tphep.cN/Article/details/07996.shtml
Csdn.tphep.cN/Article/details/45239.shtml
Csdn.tphep.cN/Article/details/96645.shtml
Csdn.tphep.cN/Article/details/16618.shtml
Csdn.tphep.cN/Article/details/61026.shtml
Csdn.tphep.cN/Article/details/29183.shtml
Csdn.tphep.cN/Article/details/64739.shtml
Csdn.tphep.cN/Article/details/21661.shtml
Csdn.tphep.cN/Article/details/26037.shtml
Csdn.tphep.cN/Article/details/20205.shtml
Csdn.tphep.cN/Article/details/60764.shtml
Csdn.tphep.cN/Article/details/43358.shtml
Csdn.tphep.cN/Article/details/76028.shtml
Csdn.tphep.cN/Article/details/86599.shtml
Csdn.tphep.cN/Article/details/68429.shtml
Csdn.tphep.cN/Article/details/61498.shtml
Csdn.tphep.cN/Article/details/27492.shtml
Csdn.tphep.cN/Article/details/90859.shtml
Csdn.tphep.cN/Article/details/55817.shtml
Csdn.tphep.cN/Article/details/40762.shtml
Csdn.tphep.cN/Article/details/20529.shtml
Csdn.tphep.cN/Article/details/25146.shtml
Csdn.tphep.cN/Article/details/61069.shtml
Csdn.tphep.cN/Article/details/67005.shtml
Csdn.tphep.cN/Article/details/65550.shtml
Csdn.tphep.cN/Article/details/86080.shtml
Csdn.tphep.cN/Article/details/00661.shtml
Csdn.tphep.cN/Article/details/67438.shtml
Csdn.tphep.cN/Article/details/12789.shtml
Csdn.tphep.cN/Article/details/51491.shtml
Csdn.tphep.cN/Article/details/04337.shtml
Csdn.tphep.cN/Article/details/40537.shtml
Csdn.tphep.cN/Article/details/97800.shtml
Csdn.tphep.cN/Article/details/69840.shtml
Csdn.tphep.cN/Article/details/80067.shtml
Csdn.tphep.cN/Article/details/94980.shtml
Csdn.tphep.cN/Article/details/62008.shtml
Csdn.tphep.cN/Article/details/32023.shtml
Csdn.tphep.cN/Article/details/05499.shtml
Csdn.tphep.cN/Article/details/22110.shtml
Csdn.tphep.cN/Article/details/70275.shtml
Csdn.tphep.cN/Article/details/24512.shtml
Csdn.tphep.cN/Article/details/87362.shtml
Csdn.tphep.cN/Article/details/37295.shtml
Csdn.tphep.cN/Article/details/68021.shtml
Csdn.tphep.cN/Article/details/33872.shtml
Csdn.tphep.cN/Article/details/46915.shtml
Csdn.tphep.cN/Article/details/03415.shtml
Csdn.tphep.cN/Article/details/25684.shtml
Csdn.tphep.cN/Article/details/87859.shtml
Csdn.tphep.cN/Article/details/78024.shtml
Csdn.tphep.cN/Article/details/21365.shtml
Csdn.tphep.cN/Article/details/55023.shtml
Csdn.tphep.cN/Article/details/91055.shtml
Csdn.tphep.cN/Article/details/97744.shtml
Csdn.tphep.cN/Article/details/64746.shtml
Csdn.tphep.cN/Article/details/69994.shtml
Csdn.tphep.cN/Article/details/26115.shtml
Csdn.tphep.cN/Article/details/95759.shtml
Csdn.tphep.cN/Article/details/48635.shtml
Csdn.tphep.cN/Article/details/88416.shtml
Csdn.tphep.cN/Article/details/96592.shtml
Csdn.tphep.cN/Article/details/09993.shtml
Csdn.tphep.cN/Article/details/07397.shtml
Csdn.tphep.cN/Article/details/51360.shtml
Csdn.tphep.cN/Article/details/76073.shtml
Csdn.tphep.cN/Article/details/77860.shtml
Csdn.tphep.cN/Article/details/44697.shtml
Csdn.tphep.cN/Article/details/53632.shtml
Csdn.tphep.cN/Article/details/51580.shtml
Csdn.tphep.cN/Article/details/95655.shtml
Csdn.tphep.cN/Article/details/55148.shtml
Csdn.tphep.cN/Article/details/75757.shtml
Csdn.tphep.cN/Article/details/37787.shtml
Csdn.tphep.cN/Article/details/91345.shtml
Csdn.tphep.cN/Article/details/22467.shtml
Csdn.tphep.cN/Article/details/90938.shtml
Csdn.tphep.cN/Article/details/79870.shtml
Csdn.tphep.cN/Article/details/75514.shtml
Csdn.tphep.cN/Article/details/17454.shtml
Csdn.tphep.cN/Article/details/23518.shtml
Csdn.tphep.cN/Article/details/05206.shtml
Csdn.tphep.cN/Article/details/36336.shtml
Csdn.tphep.cN/Article/details/06980.shtml
Csdn.tphep.cN/Article/details/05276.shtml
Csdn.tphep.cN/Article/details/25732.shtml
Csdn.tphep.cN/Article/details/76760.shtml
Csdn.tphep.cN/Article/details/57691.shtml
Csdn.tphep.cN/Article/details/60796.shtml
Csdn.tphep.cN/Article/details/71033.shtml
Csdn.tphep.cN/Article/details/69821.shtml
Csdn.tphep.cN/Article/details/78475.shtml
Csdn.tphep.cN/Article/details/94959.shtml
Csdn.tphep.cN/Article/details/84686.shtml
Csdn.tphep.cN/Article/details/19924.shtml
Csdn.tphep.cN/Article/details/65630.shtml
Csdn.tphep.cN/Article/details/48589.shtml
Csdn.tphep.cN/Article/details/17510.shtml
Csdn.tphep.cN/Article/details/36540.shtml
Csdn.tphep.cN/Article/details/47402.shtml
Csdn.tphep.cN/Article/details/49805.shtml
Csdn.tphep.cN/Article/details/87178.shtml
Csdn.tphep.cN/Article/details/03268.shtml
Csdn.tphep.cN/Article/details/39817.shtml
Csdn.tphep.cN/Article/details/92746.shtml
Csdn.tphep.cN/Article/details/37482.shtml
Csdn.tphep.cN/Article/details/28381.shtml
Csdn.tphep.cN/Article/details/26606.shtml
Csdn.tphep.cN/Article/details/41235.shtml
Csdn.tphep.cN/Article/details/01965.shtml
Csdn.tphep.cN/Article/details/84461.shtml
Csdn.tphep.cN/Article/details/71528.shtml
Csdn.tphep.cN/Article/details/42548.shtml
Csdn.tphep.cN/Article/details/00417.shtml
Csdn.tphep.cN/Article/details/34295.shtml
Csdn.tphep.cN/Article/details/03073.shtml
Csdn.tphep.cN/Article/details/97943.shtml
Csdn.tphep.cN/Article/details/66602.shtml
Csdn.tphep.cN/Article/details/73690.shtml
Csdn.tphep.cN/Article/details/29143.shtml
Csdn.tphep.cN/Article/details/14878.shtml
Csdn.tphep.cN/Article/details/63785.shtml
Csdn.tphep.cN/Article/details/23141.shtml
Csdn.tphep.cN/Article/details/89631.shtml
Csdn.tphep.cN/Article/details/40879.shtml
Csdn.tphep.cN/Article/details/06361.shtml
Csdn.tphep.cN/Article/details/29181.shtml
Csdn.tphep.cN/Article/details/35949.shtml
Csdn.tphep.cN/Article/details/72431.shtml
Csdn.tphep.cN/Article/details/53518.shtml
Csdn.tphep.cN/Article/details/71251.shtml
Csdn.tphep.cN/Article/details/72269.shtml
Csdn.tphep.cN/Article/details/32365.shtml
Csdn.tphep.cN/Article/details/21057.shtml
Csdn.tphep.cN/Article/details/62213.shtml
Csdn.tphep.cN/Article/details/70898.shtml
Csdn.tphep.cN/Article/details/62774.shtml
Csdn.tphep.cN/Article/details/19696.shtml
Csdn.tphep.cN/Article/details/12200.shtml
Csdn.tphep.cN/Article/details/83430.shtml
Csdn.tphep.cN/Article/details/16620.shtml
Csdn.tphep.cN/Article/details/95515.shtml
Csdn.tphep.cN/Article/details/91448.shtml
Csdn.tphep.cN/Article/details/60343.shtml
Csdn.tphep.cN/Article/details/80978.shtml
Csdn.tphep.cN/Article/details/98917.shtml
Csdn.tphep.cN/Article/details/56827.shtml
Csdn.tphep.cN/Article/details/03050.shtml
Csdn.tphep.cN/Article/details/15035.shtml
Csdn.tphep.cN/Article/details/65711.shtml
Csdn.tphep.cN/Article/details/36452.shtml
Csdn.tphep.cN/Article/details/29117.shtml
Csdn.tphep.cN/Article/details/17612.shtml
Csdn.tphep.cN/Article/details/33100.shtml
Csdn.tphep.cN/Article/details/84344.shtml
Csdn.tphep.cN/Article/details/97686.shtml
Csdn.tphep.cN/Article/details/12456.shtml
Csdn.tphep.cN/Article/details/86958.shtml
Csdn.tphep.cN/Article/details/52433.shtml
Csdn.tphep.cN/Article/details/67391.shtml
Csdn.tphep.cN/Article/details/00767.shtml
Csdn.tphep.cN/Article/details/82085.shtml
Csdn.tphep.cN/Article/details/27181.shtml
Csdn.tphep.cN/Article/details/43401.shtml
Csdn.tphep.cN/Article/details/54014.shtml
Csdn.tphep.cN/Article/details/97399.shtml
Csdn.tphep.cN/Article/details/29677.shtml
Csdn.tphep.cN/Article/details/87773.shtml
Csdn.tphep.cN/Article/details/59232.shtml
Csdn.tphep.cN/Article/details/32153.shtml
Csdn.tphep.cN/Article/details/02123.shtml
Csdn.tphep.cN/Article/details/94684.shtml
Csdn.tphep.cN/Article/details/41231.shtml
Csdn.tphep.cN/Article/details/03552.shtml
Csdn.tphep.cN/Article/details/62442.shtml
Csdn.tphep.cN/Article/details/16522.shtml
Csdn.tphep.cN/Article/details/17142.shtml
Csdn.tphep.cN/Article/details/78021.shtml
Csdn.tphep.cN/Article/details/61466.shtml
Csdn.tphep.cN/Article/details/50351.shtml
Csdn.tphep.cN/Article/details/99021.shtml
Csdn.tphep.cN/Article/details/18592.shtml
Csdn.tphep.cN/Article/details/73986.shtml
Csdn.tphep.cN/Article/details/65061.shtml
Csdn.tphep.cN/Article/details/54663.shtml
Csdn.tphep.cN/Article/details/69898.shtml
Csdn.tphep.cN/Article/details/10734.shtml
Csdn.tphep.cN/Article/details/58182.shtml
Csdn.tphep.cN/Article/details/09449.shtml
Csdn.tphep.cN/Article/details/82707.shtml
Csdn.tphep.cN/Article/details/28797.shtml
Csdn.tphep.cN/Article/details/96105.shtml
Csdn.tphep.cN/Article/details/18885.shtml
Csdn.tphep.cN/Article/details/56152.shtml
Csdn.tphep.cN/Article/details/95621.shtml
Csdn.tphep.cN/Article/details/19097.shtml
Csdn.tphep.cN/Article/details/12062.shtml
Csdn.tphep.cN/Article/details/63040.shtml
Csdn.tphep.cN/Article/details/89843.shtml
Csdn.tphep.cN/Article/details/86672.shtml
Csdn.tphep.cN/Article/details/48220.shtml
Csdn.tphep.cN/Article/details/86503.shtml
Csdn.tphep.cN/Article/details/24483.shtml
Csdn.tphep.cN/Article/details/85733.shtml
Csdn.tphep.cN/Article/details/67209.shtml
Csdn.tphep.cN/Article/details/82910.shtml
Csdn.tphep.cN/Article/details/12236.shtml
Csdn.tphep.cN/Article/details/65314.shtml
Csdn.tphep.cN/Article/details/67687.shtml
Csdn.tphep.cN/Article/details/39085.shtml
Csdn.tphep.cN/Article/details/77807.shtml
Csdn.tphep.cN/Article/details/07752.shtml
Csdn.tphep.cN/Article/details/00533.shtml
Csdn.tphep.cN/Article/details/09412.shtml
Csdn.tphep.cN/Article/details/28622.shtml
Csdn.tphep.cN/Article/details/67364.shtml
Csdn.tphep.cN/Article/details/62724.shtml
Csdn.tphep.cN/Article/details/70745.shtml
Csdn.tphep.cN/Article/details/35587.shtml
Csdn.tphep.cN/Article/details/24746.shtml
Csdn.tphep.cN/Article/details/86095.shtml
Csdn.tphep.cN/Article/details/29111.shtml
Csdn.tphep.cN/Article/details/57227.shtml
Csdn.tphep.cN/Article/details/39333.shtml
Csdn.tphep.cN/Article/details/99377.shtml
Csdn.tphep.cN/Article/details/08186.shtml
Csdn.tphep.cN/Article/details/02750.shtml
Csdn.tphep.cN/Article/details/94289.shtml
Csdn.tphep.cN/Article/details/58764.shtml
Csdn.tphep.cN/Article/details/63754.shtml
Csdn.tphep.cN/Article/details/02224.shtml
Csdn.tphep.cN/Article/details/25560.shtml
Csdn.tphep.cN/Article/details/46587.shtml
Csdn.tphep.cN/Article/details/44045.shtml
Csdn.tphep.cN/Article/details/36643.shtml
Csdn.tphep.cN/Article/details/36512.shtml
Csdn.tphep.cN/Article/details/13760.shtml
Csdn.tphep.cN/Article/details/65892.shtml
Csdn.tphep.cN/Article/details/24779.shtml
Csdn.tphep.cN/Article/details/11334.shtml
Csdn.tphep.cN/Article/details/89382.shtml
Csdn.tphep.cN/Article/details/82872.shtml
Csdn.tphep.cN/Article/details/15506.shtml
Csdn.tphep.cN/Article/details/31284.shtml
Csdn.tphep.cN/Article/details/39661.shtml
Csdn.tphep.cN/Article/details/38248.shtml
Csdn.tphep.cN/Article/details/25512.shtml
Csdn.tphep.cN/Article/details/52205.shtml
Csdn.tphep.cN/Article/details/43603.shtml
Csdn.tphep.cN/Article/details/34733.shtml
Csdn.tphep.cN/Article/details/74693.shtml
Csdn.tphep.cN/Article/details/69471.shtml
Csdn.tphep.cN/Article/details/00283.shtml
Csdn.tphep.cN/Article/details/97062.shtml
Csdn.tphep.cN/Article/details/50860.shtml
Csdn.tphep.cN/Article/details/15714.shtml
Csdn.tphep.cN/Article/details/66861.shtml
Csdn.tphep.cN/Article/details/99062.shtml
Csdn.tphep.cN/Article/details/34145.shtml
Csdn.tphep.cN/Article/details/94930.shtml
Csdn.tphep.cN/Article/details/16458.shtml
Csdn.tphep.cN/Article/details/11635.shtml
Csdn.tphep.cN/Article/details/86314.shtml
Csdn.tphep.cN/Article/details/30518.shtml
Csdn.tphep.cN/Article/details/27345.shtml
Csdn.tphep.cN/Article/details/44772.shtml
Csdn.tphep.cN/Article/details/84799.shtml
Csdn.tphep.cN/Article/details/43248.shtml
Csdn.tphep.cN/Article/details/81119.shtml
Csdn.tphep.cN/Article/details/99320.shtml
Csdn.tphep.cN/Article/details/86752.shtml
Csdn.tphep.cN/Article/details/54328.shtml
Csdn.tphep.cN/Article/details/79656.shtml
Csdn.tphep.cN/Article/details/82027.shtml
Csdn.tphep.cN/Article/details/55183.shtml
Csdn.tphep.cN/Article/details/57805.shtml
Csdn.tphep.cN/Article/details/44333.shtml
Csdn.tphep.cN/Article/details/78871.shtml
Csdn.tphep.cN/Article/details/59716.shtml
Csdn.tphep.cN/Article/details/61107.shtml
Csdn.tphep.cN/Article/details/54147.shtml
Csdn.tphep.cN/Article/details/54669.shtml
Csdn.tphep.cN/Article/details/31100.shtml
Csdn.tphep.cN/Article/details/04143.shtml
Csdn.tphep.cN/Article/details/31825.shtml
Csdn.tphep.cN/Article/details/78334.shtml
Csdn.tphep.cN/Article/details/72966.shtml
Csdn.tphep.cN/Article/details/58767.shtml
Csdn.tphep.cN/Article/details/38212.shtml
Csdn.tphep.cN/Article/details/25399.shtml
Csdn.tphep.cN/Article/details/97973.shtml
Csdn.tphep.cN/Article/details/77464.shtml
Csdn.tphep.cN/Article/details/98859.shtml
Csdn.tphep.cN/Article/details/66157.shtml
Csdn.tphep.cN/Article/details/54344.shtml
Csdn.tphep.cN/Article/details/09856.shtml
Csdn.tphep.cN/Article/details/43783.shtml
Csdn.tphep.cN/Article/details/25235.shtml
Csdn.tphep.cN/Article/details/08014.shtml
Csdn.tphep.cN/Article/details/83795.shtml
Csdn.tphep.cN/Article/details/45549.shtml
Csdn.tphep.cN/Article/details/41775.shtml
Csdn.tphep.cN/Article/details/73051.shtml
Csdn.tphep.cN/Article/details/21032.shtml
Csdn.tphep.cN/Article/details/16008.shtml
Csdn.tphep.cN/Article/details/52109.shtml
Csdn.tphep.cN/Article/details/31774.shtml
Csdn.tphep.cN/Article/details/53633.shtml
Csdn.tphep.cN/Article/details/51609.shtml
Csdn.tphep.cN/Article/details/85455.shtml
Csdn.tphep.cN/Article/details/65509.shtml
Csdn.tphep.cN/Article/details/15619.shtml
Csdn.tphep.cN/Article/details/06671.shtml
Csdn.tphep.cN/Article/details/89265.shtml
Csdn.tphep.cN/Article/details/57472.shtml
Csdn.tphep.cN/Article/details/22950.shtml
Csdn.tphep.cN/Article/details/61675.shtml
Csdn.tphep.cN/Article/details/45987.shtml
Csdn.tphep.cN/Article/details/35183.shtml
Csdn.tphep.cN/Article/details/22045.shtml
Csdn.tphep.cN/Article/details/72093.shtml
