当我将大文件传递到扫描仪时,以下代码块抛出 java.lang.OutOfMemoryError 异常。解决这个问题的最佳方法是什么?问题出在数组列表还是扫描仪上?
ArrayList rawData = new ArrayList();
Scanner scan = new Scanner(file);
while (scan.hasNext()) {
String next = scan.next();
rawData.add(next);
}
最佳答案
增加 java 堆大小,例如
java -Xmx6g myprogram
将堆大小设置为 6 GB。当然总会有一个限度......
关于java - 使用扫描仪将大文件读入内存时内存不足,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18689264/