Java中数组中的最大元素数

时间:2019-07-15 07:54:40

标签: java arrays long-integer

如何在Java数组中存储2 ^ 128个以上的元素。

我尝试了Integer.MAX_value,但这不是我想要的范围。我想要更多数字。

这是使用(Integer.MAX_VALUE)时出现的错误:

  

线程“主”中的异常java.lang.OutOfMemoryError:请求的数组   大小超出VM限制。

1 个答案:

答案 0 :(得分:0)

在Java中,数组内部使用整数(不是整数,而不是Integer)作为索引,最大大小受整数的最大大小限制。因此从理论上讲,它是2 ^ 31-1 = 2147483647,即Integer.MAX_VALUE。

但是在最近的HotSpot JVM中,已经观察到数组的最大大小可以是Integer.MAX_VALUE-5。