使用2D阵列超出了内存限制

Sun*_*123 1 java multidimensional-array memory-limit

当长度为100,000并且我不太明白为什么时,这行代码会创建一条错误消息"超出内存限制".

int[][] multiply = new int[length][length];
Run Code Online (Sandbox Code Playgroud)

Yun*_*sch 9

您尝试创建一个100,000*100,000个条目的数组,每个条目大概4个字节.
那是40,000,000,000字节,大约40GB.即使您安装了这种内存,系统也可能在此之前很久就会强制执行某些限制.