输入退出时如何返回主菜单

时间:2016-04-23 04:38:38

标签: java

如果选择4(退出),我想返回主菜单aka“eventSelection”。现在我将它作为退出退出整个程序。

import java.util.*;

public class SchedulingProgram {
  public static void main (String [] args) {
    eventSelection();
  }

  public static void eventSelection() {
    Scanner sc = new Scanner(System.in);
    System.out.println("Select Scheduling Action");
    System.out.print("Add an Event = 1. \nDisplay Events =      2.\nPrint      Alert = 3. \nExit = 4. \nINPUT : ");

    int actionSelect = sc.nextInt();
    if (actionSelect >= 1 && actionSelect <= 4) {
        if (actionSelect == 1) {
            addEvent();
        } else if (actionSelect == 2) {
            displayEvent();
        } else if (actionSelect == 3) {
            printAlert();
        } else if (actionSelect == 4) {
            return;
        }
    } else {
      System.out.println("Error : Choice " + actionSelect + " Does Not Exist.");
    }

}

1 个答案:

答案 0 :(得分:1)

当我刚开始学习Java时,我也经常玩这类事情。 最简单的解决方案确实是while循环。只要布尔值等于“ true”,它就会对布尔表达式求值,并继续在其括号内执行代码。 我重构了您的示例:

public static void eventSelection() {
        Scanner sc = new Scanner(System.in);

        int actionSelect = 0;
        while (actionSelect != 4) {
            System.out.println("Select Scheduling Action");
            System.out.print("Add an Event = 1. \nDisplay Events = 2.\nPrint Alert = 3. \nExit program = 4. \nINPUT : ");

            actionSelect = sc.nextInt();

            switch (actionSelect) {
                case 1:
                    addEvent();
                    break;
                case 2:
                    displayEvent();
                    break;
                case 3:
                    printAlert();
                    break;
                default:
                    break;
            }
        }
        System.out.println("Exited program");
    }

现在,每次输入数字时,它将显示您的菜单。除非它们输入4,否则现在将成为整个程序的出口。

当面对多个if-else时,最好使用开关盒。它需要一个参数,并且根据情况,您可以定义操作。 如果输入的参数与大小写不匹配,则会恢复为默认值(在这种情况下,它将不执行任何操作,程序将继续运行,并始终显示选择菜单)

需要使用“ break”关键字来包含案例。否则,下一行代码也将被执行。有关switch语句的更多信息,请参见here.

当然,这是指向while-loops.

的链接

最后一条提示...当我学习编程的时候,我发现没有什么比在Google上重新搜索(搜索)更重要了。那里有很多例子。