为了账号安全,请及时绑定邮箱和手机立即绑定

甚至在循环外运行的方法

甚至在循环外运行的方法

梦里花落0921 2023-03-02 16:10:14
我有这个方法可以作为其他方法的菜单:public static void menu(){    boolean works = true;    System.out.println("\n1 - Register Car\t2 - Register Client\t3 - Rent car\n4 - Returning car\t5 - Show list\t6 - Exit\n");    System.out.print("Input: ");    int operacao = scan.nextInt();    do {        if (operacao == 1) {            cadVeiculo();        } else if (operacao == 2) {            cadCliente();        } else if (operacao == 3) {            locar();        } else if (operacao == 4) {            devolver();        } else if (operacao == 5) {            listar();        } else if (operacao == 6){            works= false;        }    } while (works);}我不明白的是,当我运行程序并按“6”时,程序停止了,好的。但是当我按“1”注册汽车然后按“6”退出程序时,程序一直要求我输入另一个输入。我所期望的是,当我运行该程序并按“6”退出时,它只会完全停止该程序。
查看完整描述

1 回答

?
拉莫斯之舞

TA贡献1820条经验 获得超10个赞

在do-while循环中移动println和行:scanner.nextInt()


这是一个仅打印出方法名称的修改示例:


import java.util.Scanner;


class Main {

  public static void main(String[] args) {

    menu();

  }


  public static void menu() {

    Scanner scan = new Scanner(System.in);

    boolean works = true;

    do {

      System.out.println(

          "\n1 - Register Car\t2 - Register Client\t3 - Rent car\n4 - Returning car\t5 - Show list\t6 - Exit\n");

      System.out.print("Input: ");

      int operacao = scan.nextInt();

      if (operacao == 1) {

        System.out.println("cadVeiculo();");

      } else if (operacao == 2) {

        System.out.println("cadCliente();");

      } else if (operacao == 3) {

        System.out.println("locar();");

      } else if (operacao == 4) {

        System.out.println("devolver();");

      } else if (operacao == 5) {

        System.out.println("listar();");

      } else if (operacao == 6) {

        System.out.println("Goodbye!");

        works = false;

      }

    } while (works);

    scan.close();

  }

}

用法示例:


1 - Register Car    2 - Register Client 3 - Rent car

4 - Returning car   5 - Show list   6 - Exit


Input: 1

cadVeiculo();


1 - Register Car    2 - Register Client 3 - Rent car

4 - Returning car   5 - Show list   6 - Exit


Input: 3

locar();


1 - Register Car    2 - Register Client 3 - Rent car

4 - Returning car   5 - Show list   6 - Exit


Input: 4

devolver();


1 - Register Car    2 - Register Client 3 - Rent car

4 - Returning car   5 - Show list   6 - Exit


Input: 6

Goodbye!


查看完整回答
反对 回复 2023-03-02
  • 1 回答
  • 0 关注
  • 65 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信