【问题标题】:Java infinite loop, while validation [duplicate]Java无限循环,同时验证[重复]
【发布时间】:2017-11-26 23:42:51
【问题描述】:

这是我的代码的一部分,用于验证输入和循环是否是字符,但是在输入字符时会导致无限循环,但在使用整数时可以正常工作。我不知道是什么导致了无限循环,但我们将不胜感激。

System.out.println("Please type in a mark and enter -1 to end the program");

    while (mark != -1) {

        if (in.hasNextInt()) {
            mark = in.nextInt();
        } 
        else {
            System.out.println("Please input an integer: ");

        }

【问题讨论】:

  • System.out.println("Please input an integer: "); in.nextLine();

标签: java loops validation infinite-loop


【解决方案1】:

如果你输入一个字符:

 if (in.hasNextInt())

会返回false,然后你去else,当它循环的时候,in.hasNextInt()仍然是false,进入else并永远循环。

【讨论】:

    猜你喜欢
    • 2020-12-25
    • 1970-01-01
    • 2019-06-15
    • 1970-01-01
    • 2012-10-18
    • 2015-11-01
    • 2014-03-01
    • 1970-01-01
    • 2020-06-06
    相关资源
    最近更新 更多