【问题标题】:While loop with user input with minor parameters using && / ||使用 && / || 使用带有次要参数的用户输入进行循环
【发布时间】:2018-03-28 16:22:08
【问题描述】:

我正在尝试输入一个条件,在此条件下,用户会陷入一个 while 循环,直到他们输入一个介于 .00.025 之间的小数,不高也不低。

System.out.println("Enter the interest rate you would like, preferablly between .00 and .25");
while ((interestRate = keyboard.nextDouble()) < 0.00 || ((interestRate = keyboard.nextDouble()) < 0.25))
{
    System.out.println("Just a number between .00 and .25, no more, no less!");
}
System.out.println("Testing for break");

我无法让该死的东西双向正常运行,但总是遇到空白。

【问题讨论】:

    标签: java while-loop boolean


    【解决方案1】:

    您在条件内调用了两次keyboard.nextDouble()(尽管如果(第一个!)输入实际上是负数,则只会评估第一个)。可能,根本不要在条件内调用它:

    while(true) {
      interestRate=keyboard.nextDouble();
      if(interestRate>=0 && interestRate<=0.25) break;
      System.out.println("...");
    }
    

    (0.25 的条件在您的版本中也是向后的。)

    【讨论】:

      【解决方案2】:

      您调用了两次nextDouble(),而您的第二个条件正好相反。试试这个:

      while ((interestRate = keyboard.nextDouble()) < 0.00 || interestRate > 0.25)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-14
        • 1970-01-01
        • 1970-01-01
        • 2020-01-20
        • 1970-01-01
        相关资源
        最近更新 更多