在java中运行时的2d数组



当m和n的值为LARGE时,为什么下面的代码会给出运行时错误?当n和m等于1000000时,它显示java.lang.OutOfMemoryError:java堆空间。正因为如此,我的代码在大量输入n和m时失败了。有没有其他方法可以做到这一点而不会出现OutOfMemoryError?

Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
int a[][] = new int[n][m];

当N或M因内存不足而较大时,会发生运行时错误。

可以使用fill方法初始化数组。

int [][]a = new int[N][M];
Arrays.fill(a, 0);

相关内容

  • 没有找到相关文章

最新更新