CodeSprout程式萌芽
← 返回題庫 Java 基礎語法 / 第 356 題 操作教學 ↗
中等Java 例外處理機制

356. 匯入紀錄復原

Java 例外處理機制throwIllegalArgumentException復原策略

匯入工具逐筆讀取文字資料,依本題規則處理無法解析或不符合條件的紀錄。

依序處理 texts,保留原字串空格,不呼叫 trim,解析成十進位 int,接著驗證必須為介於一與十五。解析失敗由 NumberFormatException 表示;驗證失敗主動 throw IllegalArgumentException。捕捉錯誤後加入一筆0,接著處理下一筆;補值不重新驗證。 最後回傳保留資料的相異值數,空資料回傳0。 「介於一與十五」包含兩個端點,即 1 <= x && x <= 15;x 指解析後的整數。

請使用 Java 完成 Solution.solve;直接回傳資料,不使用 Scanner 或自行讀取標準輸入。

傳入的資料

texts:String[]。陣列/集合依 JSON 範例的順序傳入,索引從 0 開始。

回傳的答案

int 統計值。

範例 1
傳入[[]]
回傳0
範例 2
傳入[[""]]
回傳1

輸入不為 null。數字元素介於 -1000~1000、陣列長度 0~40,除非題意另有指定;字串長度 0~80。所有計算與回傳整數均在 Java int 範圍內(題目明示的 long 運算除外)。文字排序以 Java String.compareTo 為準;英文字母與數字皆為 ASCII。整數除法向 0 截斷;空輸入處理依題意。

💡 給我一點提示+

NumberFormatException 是 IllegalArgumentException 的子類;先區分解析、驗證與錯誤後的狀態。

小提醒

使用 Java,在 public class Solution 中完成題目指定型別的 public static solve(...) 方法,以 return 回傳答案。可加入 import、輔助類別與方法;保留入口型別,不需撰寫 main 或讀取輸入。

雲端草稿 PRO
跨裝置接續尚未提交的程式
</>你的程式碼
Java
本機草稿自動保存Tab 縮排・Esc 再 Tab 離開編輯器 ⌘ / Ctrl + Enter 測試

測試會執行 3 組公開案例與你新增的自訂案例。 登入後可提交程式,通過全部公開與隱藏測資後標記完成。

登入後提交

公開案例固定為 3 組。自訂案例只用於測試,不納入提交評分。0 / 17 組自訂案例

測試在瀏覽器內執行,不會標記完成或增加 XP。Java 首次載入需要網路。 Java 環境由 CheerpJ 提供。