终止扫描仪输入

时间:2016-02-12 02:55:43

标签: java java.util.scanner

我想在输入完成时实现Scanner终止。作为终止,我选择空白行 - 只需输入密钥即可。但由于某些原因(我不知道),下面的实现不起作用。你知道为什么吗?或许你知道更好的解决方案吗?

Scanner scanner = new Scanner(System.in);
while (!scanner.nextLine().startsWith("\n")) {
     // code
}
// code after press just Enter

我也试过了:

while (!scanner.nextLine().equals("\n")) 

......或:

while (scanner.nextLine().isEmpty())

什么都行不通......

PS。有些人可能会认为我复制了这个主题: How to terminate Scanner when input is complete?

但是我是故意这样做的,因为我现在要问具体的实施,而不是一般的扫描仪终止。

1 个答案:

答案 0 :(得分:1)

您需要查找scanner.nextLine()。length()== 0

由于\ n是行终止符,因此扫描程序不会返回它,类似于解析字符串或使用StringTokenizer的概念。您只需要查找零长度字符串。