题
对于一个扫描器对象,hasNextLine()方法返回true,而hasNext()方法返回false呢?
注意:根据输入文件,hasNext()方法按预期返回结果; hasNextLine()似乎没有返回正确的结果。
码
这里是我运行的代码创建的结果如下:
public void ScannerTest(Reader fileReaderObject){
Scanner scannerObj = new Scanner(fileReaderObject);
for(int i = 1; scannerObj.hasNext(); i++){
System.out.println(i + ": " + scannerObj.next());
System.out.println("Has next line: " + scannerObj.hasNextLine());
System.out.println("Has next: " + scannerObj.hasNext());
}
System.out.println();
scannerObj.close();
}
输入文件
以下是我传递给此扫描程序的文件的实际内容:
a 3 9
b 3 6
c 3 3
d 2 8
e 2 5
f 2 2
g 1 7
h 1 4
i 1 1
结果
以下是我运行我的代码时打印在控制台中的结尾,包括我不能理解的部分:
25: i
Has next line: true
Has next: true
26: 1
Has next line: true
Has next: true
27: 1
Has next line: true
Has next: false