在Java中创建大小为[15088] [15088] [5]的矩阵时,使用int作为数据类型会使我的堆空间不足。我将如何创建一个?使用命令-Xmx没有帮助。

int[][][] a=new int[15088][15088][5];

最佳答案

如果使用15088 * 15088 * 5的数组大小,则该数组需要15088 * 15088 * 5 * 4字节= 4.24 GB(大约)堆大小**。如果数据稀疏分布,则可以使用其他数据结构,如以下参考资料中所述。

Memory-efficient sparse array in Java

09-19 01:02