我的代码将显示我这是 Not Acceptable 输入。如果我插入负数。然后继续提示输入。但它继续计算。这是我的代码的一部分包含错误。但我没有看到。

public static boolean checkOctal()
{
    boolean b = true;
    if (oct < 0 && oct > 99999999 )
    {
        b = false;
        System.out.println("That is not an acceptable input.");
    }
    int tmp;
    int tmp1 = oct;
    while (tmp1 > 0)
    {
        tmp = tmp1 % 10;
        tmp1 = tmp1 / 10;
        if (tmp >= 0 && tmp < 8)
        {
            continue;
        } else
        {
            b = false;
            break;
        }
    }
    return b;

}

最佳答案

你应该写
if (oct < 0 || oct > 99999999 )
代替
if (oct < 0 && oct > 99999999 )|| 代表或,而 && 代表和。

关于java - 结果似乎是错误的,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13117705/

10-11 00:30