Board logo

標題: 【058】例外處理 (四) [打印本頁]

作者: tonyh    時間: 2023-4-19 16:20     標題: 【058】例外處理 (四)

利用 try...catch 語法捕捉例外, 針對不同的例外做出不同的回應, 並只允許使用者至多三次的錯誤嘗試.
(例如若捕捉到 ArithmeticException 便回應 "運算錯誤! 分母不可為零!",而若捕捉到 InputMismatchException 則回應 "格式錯誤! 輸入須為整數!")



本帖隱藏的內容需要回復才可以瀏覽

作者: 王捷恩    時間: 2023-4-19 16:55

  1. import java.util.InputMismatchException;
  2. import java.util.Scanner;
  3. public class A {

  4.         public static void main(String[] args) {
  5.                 int x, y, n=0;
  6.                 while(true)
  7.                 {
  8.                         try{
  9.                                 if(n==3)
  10.                                 {
  11.                                         System.out.println("wrong");
  12.                                         return;
  13.                                 }
  14.                                 Scanner s=new Scanner(System.in);
  15.                                 System.out.println("enter numerator:");
  16.                                 x=s.nextInt();
  17.                                 System.out.println("enter denominator:");
  18.                                 y=s.nextInt();
  19.                                 System.out.println(x+"/"+y+"="+(x/y));
  20.                         }catch(ArithmeticException e){
  21.                                 n++;
  22.                                 System.out.println("denominator cannot be 0");
  23.                         }catch(InputMismatchException e){
  24.                                 n++;
  25.                                 System.out.println("enter an integer");
  26.                         }               
  27.                 }
  28.         }
  29. }
複製代碼





歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/) Powered by Discuz! 7.2