我正在使用 Scanner 读取大约 700 行文本(每行一个单词),并将每一行/单词存储为 String ArrayList 的一个元素,该元素由预定的 800 个元素大小构成。然而,在 Eclipse 的变量模式下调试时,我注意到 ArrayList 的后面元素根本没有初始化 - 似乎 Scanner 停在一个单词的中间,在一个随机的行上。
- 这不是分隔符的问题(我已经初始化了带有和不带有“\n”分隔符的扫描仪,没有区别)或文本内容本身 - 当我切换单词的顺序时,扫描仪停止阅读完全相同的字符数。
- 文本文件本身并不是很大——只有 6KB。
- 我试过从 next() 切换到 nextLine(),也没有问题
我正在尝试使用资源:
try (Scanner stopwordImport = new Scanner(new File(stopwordFile))) {
while (stopwordImport.hasNext()) {
stopWords.add(stopwordImport.nextLine());
}
...所以扫描仪应该关闭。
我不知所措……怎么了?提前致谢。