HashMap中capacity、loadFactor、threshold、size等概念的解釋


約定

約定前面的數組結構的每一個格格稱為桶 
約定桶后面存放的每一個數據稱為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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM