【发布时间】:2017-03-16 21:48:19
【问题描述】:
我有一个 while 循环,它应该在没有更多整数要读取时结束。出于某种原因,它会继续检查(或者至少我相信如此)并且不会返回打印语句。我的示例输入看起来像,
20 21 22 23
我在hasNextInt() 之前尝试过hasNextLine(),尝试/最终阻止并关闭扫描仪以及阅读论坛。
如果我对问题的措辞/格式有误,或者我还没有遇到其他资源,我将不胜感激。我真的只是想学习。
public static void main(String[] args) {
x = 0;
in = new Scanner(System.in);
while (in.hasNextInt()) {
x = in.nextInt();
reverse(x);
beautiful(x, reverse(x), y);
}
printCount(count);
}
【问题讨论】:
-
当您从标准输入读取输入时,输入永远不会结束(扫描器总是等待输入新的输入)。您应该需要输入一些特殊输入才能退出循环。
-
添加非整数值会中断循环,例如
20 21 22 23 A.
标签: java while-loop java.util.scanner