【问题标题】:Making switch statement in method loop在方法循环中创建 switch 语句
【发布时间】:2016-12-03 10:45:31
【问题描述】:
 void menu(){ 
    System.out.println("1. Take Quiz");
    System.out.println("2. Quiz Results");
    System.out.println("3. Performance Comment");
    System.out.println("4. Exit");
    System.out.print("Choose from the above:");
    byte menu = Keyboard.readByte();
    switch(menu){

        case 1 : 
        takeQuiz();
        break;

        case 2 :
        quizResults();
        break;

        case 3 :
        performanceComment();
        break;

        case 4 : 
        exit();

    }
}

我想让这个代码循环,这样如果用户输入 case 1 , case 1 就会出现,但之后整个菜单又会重新出现。与案例2等相同。 我应该使用循环吗?如果是,如何使用? 任何帮助表示赞赏。

【问题讨论】:

标签: java loops switch-statement


【解决方案1】:

您可以同时使用 whilefor 循环:

while 循环

void menu() {
    while (true) {
        System.out.println("1. Take Quiz");
        System.out.println("2. Quiz Results");
        System.out.println("3. Performance Comment");
        System.out.println("4. Exit");
        System.out.print("Choose from the above:");
        byte menu = Keyboard.readByte();
        switch (menu) {
            case 1:
                takeQuiz();
            case 2:
                quizResults();
            case 3:
                performanceComment();
            case 4:
                break;
        }
    }
}

for循环:

void menu() {
    for (;;) {
        System.out.println("1. Take Quiz");
        System.out.println("2. Quiz Results");
        System.out.println("3. Performance Comment");
        System.out.println("4. Exit");
        System.out.print("Choose from the above:");
        byte menu = Keyboard.readByte();
        switch (menu) {
            case 1:
                takeQuiz();
            case 2:
                quizResults();
            case 3:
                performanceComment();
            case 4:
                break;
        }
    }
}

两种方式都使用无限循环。
Break 关键字终止循环。
Here 您可以阅读有关 break 关键字的更多信息。
希望对您有所帮助。

【讨论】:

    【解决方案2】:

    在开始时添加一个布尔标志和一个while循环,直到用户选择4:

    void menu(){
        boolean mustRun = true; 
        while(mustRun){
            System.out.println("1. Take Quiz");
            System.out.println("2. Quiz Results");
            System.out.println("3. Performance Comment");
            System.out.println("4. Exit");
            System.out.print("Choose from the above:");
            byte menu = Keyboard.readByte();
            switch(menu){
                case 1 : 
                takeQuiz();
                break;
                case 2 :
                quizResults();
                break;
                case 3 :
                performanceComment();
                break;
                case 4 : 
                mustRun = false;
                break;
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-05
      相关资源
      最近更新 更多