本文介绍了做Java数组有一个最大尺寸是多少?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有没有Java数组可包含的元素的数量限制吗?如果是这样,那是什么?

Is there a limit to the number of elements a Java array can contain? If so, what is it?

推荐答案

有没有看到正确的答案,即使它很容易测试。

Haven't seen the right answer, even though it's very easy to test.

在最近的HotSpot虚拟机,正确答案是 Integer.MAX_VALUE的 - 5 。一旦你超越了:

In a recent HotSpot VM, the correct answer is Integer.MAX_VALUE - 5. Once you go beyond that:

public class Foo {
  public static void main(String[] args) {
    Object[] array = new Object[Integer.MAX_VALUE - 4];
  }
}

您可以:

Exception in thread "main" java.lang.OutOfMemoryError:
  Requested array size exceeds VM limit

这篇关于做Java数组有一个最大尺寸是多少?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-05 14:34