使用二维数组超出内存限制
Memory limit exceeded with the use of a 2D array
当长度为 100,000 时,这行代码会创建一条错误消息 "Memory limit exceeded",我不太明白为什么。
int[][] multiply = new int[length][length];
您尝试创建一个包含 100,000 * 100,000 个条目的数组,每个条目大概 4 个字节。
那是 40,000,000,000 字节,大约 40GB。即使您安装了那种内存,系统也可能会在此之前很久实施一些限制。
当长度为 100,000 时,这行代码会创建一条错误消息 "Memory limit exceeded",我不太明白为什么。
int[][] multiply = new int[length][length];
您尝试创建一个包含 100,000 * 100,000 个条目的数组,每个条目大概 4 个字节。
那是 40,000,000,000 字节,大约 40GB。即使您安装了那种内存,系统也可能会在此之前很久实施一些限制。