在try/catch中捕获异常后继续执行循环

Bun*_*ion 8 java try-catch while-loop

一旦在此代码中捕获到异常,该menuSystem方法就会运行,但是一旦我输入一个数字,程序就会关闭并显示"Build is successful"消息.一旦发生异常,有没有办法重新进入while循环?

public static void main(String[] args) {
   final UnitResults myUnit = new UnitResults(10, "Java");
   int option = menuSystem();

   try {
      while (option != 0) {
         final Scanner keyb = new Scanner(System.in);
         System.out.println("");
         switch (option) {
         }
      }
   } catch (Exception InputMismachException) {
      System.out.println("\nPlease Enter a Valid Number\n");
      option = menuSystem();
   }
}
Run Code Online (Sandbox Code Playgroud)

Per*_*ror 16

把你的try/catch放在你的while循环中:

    while (option != 0) {
        final Scanner keyb = new Scanner(System.in);
        System.out.println("");
        try {
            switch (option) {

            }
        } catch (Exception InputMismachException) {
            System.out.println("\nPlease Enter a Valid Number\n");
            option = menuSystem();
        }
    }
Run Code Online (Sandbox Code Playgroud)