約定
約定前面的數組結構的每一個格格稱為桶
約定桶后面存放的每一個數據稱為bin
bin這個術語來自於JDK 1.8的HashMap注釋。
size
size表示HashMap中存放KV的數量(為鏈表和樹中的KV的總和)。
capacity
capacity譯為容量。capacity就是指HashMap中桶的數量。默認值為16。一般第一次擴容時會擴容到64,之后好像是2倍。總之,容量都是2的冪。
- 1
- 2
- 3
- 4
loadFactor
loadFactor譯為裝載因子。裝載因子用來衡量HashMap滿的程度。loadFactor的默認值為0.75f。計算HashMap的實時裝載因子的方法為:size/capacity,而不是占用桶的數量去除以capacity。
- 1
- 2
- 3
- 4
threshold
threshold表示當HashMap的size大於threshold時會執行resize操作。
threshold=capacity*loadFactor
- 1
- 2
- 3
- 4
結束語
這篇博文討論了HashMap的一些基本概念,如capacity、loadFactor、threshold、size等,下篇博文 HashMap的擴容及樹化過程 根據示例,討論下擴容和樹化的過程。
https://blog.csdn.net/fan2012huan/article/details/51087722