Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java HashMap最大容量_Java_Hashmap_Bit Manipulation - Fatal编程技术网

Java HashMap最大容量

Java HashMap最大容量,java,hashmap,bit-manipulation,Java,Hashmap,Bit Manipulation,我正在浏览java.util.HashMap类代码,发现MAXIMUM_CAPACITY的定义如下: static final int MAXIMUM_CAPACITY = 1 << 30; static final int MAXIMUM_CAPACITY=1首先,它解释了如何选择值-2^30(是2的幂,约为最大int值的一半)比0x40000000或1073741824更有意义。 第二,编译器无论如何都会计算值。1编码器不想记住十六进制数字是如何工作的?除此之外,我找不到任何其

我正在浏览
java.util.HashMap
类代码,发现
MAXIMUM_CAPACITY
的定义如下:

static final int MAXIMUM_CAPACITY = 1 << 30;

static final int MAXIMUM_CAPACITY=1首先,它解释了如何选择值-2^30(是2的幂,约为最大int值的一半)比0x40000000或1073741824更有意义。

第二,编译器无论如何都会计算值。

1编码器不想记住十六进制数字是如何工作的?除此之外,我找不到任何其他原因。除了这比一些随机的十进制/十六进制值更容易阅读之外,我看不出这样做的原因。从视觉上看,更容易分辨出
1