如何解决Java中的运行时二维数组
为什么当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);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。