java - 当我输入正确的值 1-99 时,我仍然遇到异常

标签 java

public static String getQtyInput(String prompt) throws Exception
{
    String qtyValue;
    int counter = 0;

    do
    {       
        qtyValue = getStringInput(prompt);
        counter++;      
    } while (counter < 3);

    if (Integer.parseInt(qtyValue) > 1 || Integer.parseInt(qtyValue) < 99) 
    {
        throw new Exception("Invalid input! \n Must enter 1-99");
    }

    return qtyValue;
}

最佳答案

考虑一下您要检查的内容。 1 到 99 范围内的数字是正确的,因此您只想在数字超出该范围时显示异常。换句话说,当它低于 (<) 低于 1 或高于 (>) 高于 99 时。

因此您需要将 if 语句重写为:

if (Integer.parseInt(qtyValue) < 1 || Integer.parseInt(qtyValue) > 99) 

关于java - 当我输入正确的值 1-99 时,我仍然遇到异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35006217/

相关文章:

javascript - 如何在没有 Node.js/NPM 的情况下将我的 Web 应用程序转换为 Angular 4

java - 如何将 Docker 与 Tomcat 一起使用?

java - 如何将新的数据行添加到我的 Derby 数据库中?

Java HTTP 连接似乎保持打开状态

java - 与特定事件监听器关联的方法列表?

java - 如何找到小于给定数的2的最大次方

java - 使用 sa 帐户但不使用其他帐户的代码

java - 在 Spring Cloud Gateway 中获取真实的客户端 IP 地址

java - 使用 JRocket 追踪 ColdFusion 内存泄漏

java - Java中Wallis函数的递归实现