while循环不执行else语句和重复循环

时间:2014-10-17 00:04:00

标签: java while-loop

如果在未输入正确选择的情况下进行编译,则不会显示重新输入或重复循环

int counterA = 0;
while (counterA < 0) {
    if (conversionSelection.equalsIgnoreCase("binary"))
            counterA++;
    if (conversionSelection.equalsIgnoreCase("octal"))
            counterA++;
    else System.out.println("Error. Please enter weither to convert the Hex to Octal or Binary:");
        conversionSelection = keyboard.nextLine();
    }

3 个答案:

答案 0 :(得分:0)

循环不应该执行,因为条件从一开始就失败了。

还有一个悬而未决的声明。因此,如果你想让else正确执行,你需要为你的第二个if语句设置一个else-if。虽然它目前可能不会产生错误,但防止悬挂'其他'是一项重要的技能。

答案 1 :(得分:0)

while以来,您的代码永远不会进入counterA = 0循环,而while循环条件则为< 0。您希望counterA小于零,或者要在其集合中包含counterA的值的条件(例如while (counterA <= 0))。

答案 2 :(得分:0)

此循环永远不会启动,因为0不小于0.