首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Java 遞歸實現階乘計算:命令行參數解析與異常處理

     編輯:程式設計疑難解答

題目需求

編寫 Java 程序,從命令行接收一個整數參數,計算其階乘並輸出。需處理參數缺失、非數字、負數等異常情況。

題目截圖

參考源碼

public class MathCal {
    public static void main(String[] args) {
        try {
            if (args.length == 0) throw new ArrayIndexOutOfBoundsException("命令行中沒有提供參數");
            String target = args[0];
            try {
                int targetNumber = Integer.parseInt(target);
                System.out.println(getJieCheng(targetNumber));
            } catch (NumberFormatException e) {
                throw new IllegalArgumentException("輸入必須為整數: " + e.getMessage());
            }
        } finally {
            System.out.println("程序運行結束!");
        }
    }

    /** 遞歸求階乘 */
    public static int getJieCheng(int number) {
        if (number < 0) throw new IllegalArgumentException("求負數階乘異常!");
        if (number == 0 || number == 1) return 1;
        return number * getJieCheng(number - 1);
    }
}

代碼展示了命令行參數讀取、異常捕獲轉換、遞歸算法及 finally 塊的使用。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved