【问题标题】:putting a loop on a switch-case. exit menu when option 5 is selected by user在开关盒上放置一个循环。用户选择选项 5 时退出菜单
【发布时间】:2014-03-23 20:08:01
【问题描述】:

我有一个包含 5 个案例的 switch 案例,每个案例都有不同的任务要做。我想这样做,以便当用户选择案例选项并且任务由程序完成时,菜单再次出现,用户可以继续从菜单中选择某些内容,直到用户选择退出的菜单选项 5。

目前为止:

//sys.out to print the menu options

            System.out.print("Enter the number of your choosing: ");
            menu = scan.nextInt();
            System.out.println();


            switch (menu) {

            case 1:
            //code
            break;
            case 2:
            //code
            break;
            case 3:
            //code
            break;
            case 4:
            //code
            break;
            case 5:
            //code
            break;
            case 12:
            System.exit(0);
            break;
    }

【问题讨论】:

    标签: java loops menu switch-statement


    【解决方案1】:

    怎么样:

    int menu = 0;
    //you already said it: "the user can keep choosing something from 
    //the menu until the user choses menu option 5"
    while(menu != 5) {
    
        System.out.print("Enter the number of your choosing: ");
        menu = scan.nextInt();
        System.out.println();
    
        switch(menu){
            case 1: ...
            ...
            case 5: 
               break;
            default: System.out.println("Not supported.");
               break;
        }
    }
    
    //exit...
    

    【讨论】:

    • 这只会导致我选择的选项(例如,如果我选择了执行任务的案例 2)继续不间断地运行
    【解决方案2】:
    public int getItem ()
    {
        int item = 0;
        do
        {
            System.out.println("Enter");
            item = scanner.nextInt();
            scanner.nextLine();
        }
        while (item < 0 || item > 5);
        return item;
    }
    
    public void start ()
    {
        int item;
        show ();
        item = getItem();
        switch (item)
            {
                case 1: code    break;
                .......
                case 5: code    break;
             }
        while (item !=0)
            System.out.println("buye");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-05-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-28
      相关资源
      最近更新 更多