返回列表 發帖

例外處理 (四)

本帖最後由 葉桔良 於 2023-4-8 16:40 編輯

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

  1. import java.util.*;
  2. public class Ch54
  3. {
  4.     public static void main(String args[])
  5.     {
  6.          int x,y,n=0;
  7.          while(true)
  8.          {
  9.              if(n==3)
  10.              {
  11.                  System.out.println("錯誤嘗試過多! 程式跳出!");
  12.                  return;
  13.              }
  14.              try
  15.              {
  16.                  Scanner s=new Scanner(System.in);
  17.                  System.out.print("請輸入分子: ");
  18.                  x=s.nextInt();
  19.                  System.out.print("請輸入分母: ");
  20.                  y=s.nextInt();
  21.                  System.out.println(x+"/"+y+"="+(x/y));
  22.                  return;
  23.              }catch(ArithmeticException e)
  24.              {
  25.                  n++;
  26.                  System.out.println("運算錯誤! 分母不可為零!\n");
  27.              }catch(InputMismatchException e)
  28.              {
  29.                  n++;
  30.                  System.out.println("格式錯誤! 輸入須為整數!\n");
  31.              }
  32.          }
  33.     }
  34. }
複製代碼

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

返回列表