java - 嵌套 do while 循环从一个循环跳转到另一个循环

标签 java loops do-while

在尝试使用 do-while 循环时,我遇到了一些逻辑困难。在我的 main() 方法中。如果用户输入的值大于 6,我会尝试一次又一次地提示他们:

do{
System.out.println("select your option: ");
        System.out.println("1.option1");
        System.out.println("2.option2");
        System.out.println("3.option3");
        System.out.println("4.option4");
        System.out.println("5.option5");
        System.out.println("6.Quit");
        optionChoice = sc.nextInt();
        switch (optionChoice) {
        case 1:
            option1Method();
            break;
        } 
 } while (optionChoice > 6);

然后在我的 option1Method() 中,我有另一个 do while 循环:

    do {
        System.out.println("select your option: ");
        System.out.println("1.opt1 method1");
        System.out.println("2.opt2 method2");
        System.out.println("3.opt3 method3");
        System.out.println("4.Back");
        optOption = sc.nextInt();
        switch (optOption ) {
        case 1: //do stuffs, same for case 2 and 3
           break;
        case 4: return;
        default: break;
       }
} while (optOption > 4);

对于这个方法,我试图一次又一次地提示用户选择,只要他们输入大于 4 的值。然后,当他们输入 4 时,它应该返回到 main() 方法中的 do while 循环。

但是,对于第二个 do-while 循环,当我输入 4 时,程序本身刚刚终止。有什么想法吗?

提前致谢。

最佳答案

在main方法中设置条件为:

optionChoice != 6

关于java - 嵌套 do while 循环从一个循环跳转到另一个循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36097153/

相关文章:

python - 将列表附加到另一个列表时遇到问题

java - 在 Java 中使用 do-while 循环检查用户的输入

java - 将 `enum constant name` 变回 `enum constant` 的通用方法

java - 声明的 arrayList 无法识别 - android

java - 如何避免方法中的try-catch语句?

java - MapBox 地点选择器导致致命信号 6

ios - 使用循环到几个 subview (swift4)

javascript - 使用 JSON 将行传送到 JavaScript

c# - Do-While循环的可接受用法?

c - 非数字输入导致死循环