Get the App
SLTechnology News&Howtos  ›  Internet Technology  › 

How to use threshold and capacity of Hashmap in JDK

Shulou Source: shulou.com Published: 2022-06-02 09:28:16 11月12日 Update

This article introduces the knowledge about "how to use threshold and capacity of Hashmap in JDK". In the actual case operation process, many people will encounter such difficulties. Next, let Xiaobian lead you to learn how to deal with these situations! I hope you can read carefully and learn something!

JDK8

List-1

public HashMap(int initialCapacity, float loadFactor) { if (initialCapacity

< 0) throw new IllegalArgumentException("Illegal initial capacity: " + initialCapacity); if (initialCapacity >

MAXIMUM_CAPACITY) initialCapacity = MAXIMUM_CAPACITY; if (loadFactor >> 1; n |= n >>> 2; n |= n >>> 4; n |= n >>> 8; n |= n >>> 16; return (n

< 0) ? 1 : (n >

= MAXIMUM_CAPACITY) ? MAXIMUM_CAPACITY : n + 1;}

tableSizeFor returns the number greater than the input parameter and nearest integer power of 2.

When starting to construct HashMap, pass 6, tableSizeFor gets 8, then because the table array is empty, so create a table[] with length 8, then 8*0.75 gets a new threshold, that is 6, when inserting values into hashmap, the number of elements exceeds 6, then expand, the length of the table array becomes 16(8*2).

Reference

https://www.cnblogs.com/loading4/p/6239441.html

"How to use threshold and capacity of Hashmap in JDK" is introduced here. Thank you for reading it. If you want to know more about industry-related knowledge, you can pay attention to the website. Xiaobian will output more high-quality practical articles for everyone!

Tags: Use method method content array more knowledge length practicality achievement next number element parameter dilemma reality situation article time case tape Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno vpn Docker Apple MariaDB Shulou Information