这可能是最简单的事情之一,但我没有看到我做错了什么。为什么nextLine()返回一个空字符串?
我的输入包含一个带有数字的第一行(要读取的行数),一堆带有数据的行以及只有\ n的最后一行。我应该处理这个输入,并在最后一行之后,做一些工作。
我有这个输入:
5
test1
test2
test3
test4
test5
/*this is a \n*/
以及读取输入我有这样的代码。
int numberRegisters;
String line;
Scanner readInput = new Scanner(System.in);
numberRegisters = readInput.nextInt();
while (!(line = readInput.nextLine()).isEmpty()) {
System.out.println(line + "<");
}
我的问题是为什么我不打印任何东西?程序读取第一行,然后什么都不做。
btw,不是第一个数字是测试的数量? – RiaD
尝试用行!= null替换!line.isEmpty()? – user2147970
是的,它是测试次数 – Favolas