使用if语句指向程序中的特定行?JAVA

使用if语句指向程序中的特定行?JAVA,java,loops,if-statement,while-loop,Java,Loops,If Statement,While Loop,我有一个程序,要求用户输入一个介于1和6之间的值。但是,如果他们不在该范围内进行询问,我希望程序要求用户再次输入。我在这个方法中还有其他代码,所以我不能直接指向这个方法 System.out.print("Now enter a number between 1 and 6 "); dieNumber = keyboard.nextInt(); if (dieNumber == 1){ drawOne(pane); }

我有一个程序,要求用户输入一个介于1和6之间的值。但是,如果他们不在该范围内进行询问,我希望程序要求用户再次输入。我在这个方法中还有其他代码,所以我不能直接指向这个方法

System.out.print("Now enter a number between 1 and 6 ");
        dieNumber = keyboard.nextInt();

        if (dieNumber == 1){        
            drawOne(pane);  }   
        else if (dieNumber == 2){
            drawTwo(pane);  }
        else if (dieNumber == 3){
            drawThree(pane);}
        else if (dieNumber == 4){
            drawFour(pane); }
        else if (dieNumber == 5){
            drawFive(pane); }
        else if (dieNumber == 6){
            drawSix(pane); }

只需在用户每次输入大于6的数字时进行while循环再次询问

System.out.print(“现在输入一个介于1和6之间的数字”);
dieNumber=键盘.nextInt();
而(编号>6){
System.out.print(“现在输入一个介于1和6之间的数字”);
dieNumber=键盘.nextInt();
}
如果(dieNumber==1){
drawOne(窗格);}
否则,如果(dieNumber==2){
绘图二(窗格);}
否则如果(dieNumber==3){
绘图三(窗格);}
否则,如果(dieNumber==4){
绘图四(窗格);}
否则,如果(dieNumber==5){
图纸五(窗格);}
否则,如果(dieNumber==6){

drawSix(窗格);}
我只是在和
中断时添加了一个
如果选择所需的数字,则
中断
将中断while循环,除此之外,它将要求用户输入另一个数字

while(true){
    System.out.print("Now enter a number between 1 and 6 ");
    dieNumber = keyboard.nextInt();
    if (dieNumber == 1){        
        drawOne(pane);  break;}   
    else if (dieNumber == 2){
        drawTwo(pane);  break;}
    else if (dieNumber == 3){
        drawThree(pane);break;}
    else if (dieNumber == 4){
        drawFour(pane); break;}
    else if (dieNumber == 5){
        drawFive(pane); break;}
    else if (dieNumber == 6){
        drawSix(pane);  break;}
}

另一种解决方案,不需要添加
中断或任何其他重复代码到每个路径:

boolean needToTryAgain;
do {
    needToTryAgain = false;
    System.out.print("Now enter a number between 1 and 6 ");
    dieNumber = keyboard.nextInt();

    if (dieNumber == 1){        
        drawOne(pane);  }   
    else if (dieNumber == 2){
        drawTwo(pane);  }
    else if (dieNumber == 3){
        drawThree(pane);}
    else if (dieNumber == 4){
        drawFour(pane); }
    else if (dieNumber == 5){
        drawFive(pane); }
    else if (dieNumber == 6){
        drawSix(pane); }
    else {
        // this would be a good place to print an error message
        needToTryAgain = true;
    }
} while (needToTryAgain);

您是否尝试使用
while
循环来封闭代码段?对我来说,它似乎应该起作用。@Keppil是的,但在一天结束时,我仍然需要一些东西,上面写着,如果它不在这个范围内,请再次运行它。这就是
while
循环for@AntonH是的,我想错了。谢谢