首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何用Java扫描仪测试空白行?

如何用Java扫描仪测试空白行?
EN

Stack Overflow用户
提问于 2018-09-25 05:43:59
回答 2查看 0关注 0票数 0

我希望用扫描仪输入,直到没有任何东西(即当用户输入空行时)。我该如何实现这一目标?

我试过了:

代码语言:javascript
复制
while (scanner.hasNext()) {
    // process input
}

但那会让我陷入困境

EN

回答 2

Stack Overflow用户

发布于 2018-09-25 14:37:55

来自http://www.java-made-easy.com/java-scanner-help.html:

问:如果我使用Java扫描仪扫描空行会怎样? 答:这取决于。如果您正在使用nextLine(),则会将空行读入为空字符串。这意味着如果要将空行存储在String变量中,则变量将保持为“”。它不会存储“”或者放置了许多空格。如果您正在使用next(),那么它根本不会读取空白行。它们完全被跳过了。

我的猜测nextLine()仍然会在空行上触发,因为从技术上讲,扫描仪将具有空字符串""。所以,你可以检查一下if s.nextLine().equals("")

票数 0
EN

Stack Overflow用户

发布于 2018-09-25 15:36:48

这里有个方法:

代码语言:txt
复制
Scanner keyboard = new Scanner(System.in);
String line = null;
while(!(line = keyboard.nextLine()).isEmpty()) {
  String[] values = line.split("\\s+");
  System.out.print("entered: " + Arrays.toString(values) + "\n");
}
System.out.print("Bye!");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100002726

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档