首页 > 解决方案 > 为什么每次执行或进入 #3 菜单时我的 #3 菜单都没有显示

问题描述

我的输出代码有一些问题。当我运行它时,我的#3 菜单根本没有显示。只有#1 和#2 菜单。当我输入#3 时,它会显示我的#2 菜单。

注意:#2 菜单与#1 菜单的编码相同

这是我的代码:

public static void main(String[] args) throws IOException {
    // TODO code application logic here
    BufferedReader dataIn = new BufferedReader(new InputStreamReader(System.in));
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));


    int foods = 1, drinks = 2, dessert = 3;


    double sw = 10.00;
    double bg = 15.00;
    double rm = 25.00;
    double it = 20.00;
    double ck = 15.00;
    double cf = 13.00;
    double brn = 10.00;
    double dnt = 15.00;
    double payment, change;



    System.out.println(" ******* Menu ******* ");
    System.out.println("[1]Food [2]Drinks [3]Desserts");
    System.out.println("Enter Choice: ");
    foods=Integer.parseInt(dataIn.readLine());
    if (foods == 1) {

        String choice1;
        System.out.println(" [a] Sandwich - 10.00 \n [b] Burger - 15.00 \n [c] Rice Meal - 25.00");
        System.out.println("\n Enter Choice: ");
        System.out.flush();
        choice1 = br.readLine();;
        if (choice1.equals("a")) {
            System.out.println("You Chose a, Sandwich (10.00)");
            System.out.println("Enter Payment: ");
            payment=Double.parseDouble(dataIn.readLine());
           if (payment < 10) {
                System.out.println("Insufficient Funds");
           }else{
                change = payment - sw;
           System.out.println("Your Change is: "+change);
           System.out.println("Thank You!");
           }
        }
        else if (choice1.equalsIgnoreCase("b")) {
           System.out.println("You Chose e, Burger (15.00)"); 
           System.out.println("Enter Payment: ");
           payment=Double.parseDouble(dataIn.readLine());
           if (payment < 15) {
                System.out.println("Insufficient Funds");
           }else{
               change = payment - bg;
           System.out.println("Your Change is: "+change);
           System.out.println("Thank You!");
           }
        } 
        else if (choice1.equalsIgnoreCase("c")) {
           System.out.println("You Chose c, Rice Meal (25.00)"); 
           System.out.println("Enter Payment: ");
           payment=Double.parseDouble(dataIn.readLine());
           if (payment < 13) {
              System.out.println("Insufficient Funds"); 
           }else{
               change = payment - rm;
           System.out.println("Your Change is: "+change);
           System.out.println("Thank You!"); 
           }
        }     


    } else if(dessert == 3) {
        String choice3;
        System.out.println(" [g] brownies - 10.00 \n [h] donuts - 15.00");
        System.out.println("\n Enter Choice: ");
        System.out.flush();
        choice3 = br.readLine();
        if (choice3.equals("g")){
           System.out.println("You Chose g, brownies (10.00)"); 
           System.out.println("Enter Payment: ");
           payment=Double.parseDouble(dataIn.readLine());
           if(payment < 10) {
              System.out.println("Insufficient Funds");  
           }else{
               change = payment - brn;
           System.out.println("Your Change is: "+change);
           System.out.println("Thank You!");
           }
        }
    }  
} 

我在这里错过了什么吗?我一直在想一些东西来补偿这个程序并在 4 天内完成它。

标签: java

解决方案


推荐阅读