Dan*_*Dan 2 java java.util.scanner
我试图从用户连续读取输入,直到用户键入退出.我只是输入'quit'来测试它,但是console.hasNext()似乎没有返回false.事实上,似乎该程序在第7行(hasNext()行)被阻止.有任何想法吗?
boolean bool = true;
while (bool) {
System.out.println("Type 'quit':");
Scanner console = new Scanner(System.in);
if (console.next().equals("quit")) {
System.out.println("You typed quit");
System.out.println("check: " + console.hasNext()); // This line doesnt print
bool = false;
}
}
Run Code Online (Sandbox Code Playgroud)
Aza*_*Aza 11
如果您Scanner被声明为System.in,则会询问System.in是否有下一个值要接收.然后in该类将等待用户输入内容,然后返回true.
保留hasNext()输入大小固定的文件等内容.这样,当Scanner查询文件时,它有一定的确定性hasNext().
相反,我建议将下一个值作为String抓取,然后检查它是否与整数格式匹配.如果是,那么转换它,否则,按照你的意愿处理它.
| 归档时间: |
|
| 查看次数: |
4167 次 |
| 最近记录: |