019-001-009

複数の例外をキャッチする

中級

問題説明

複数の例外をキャッチする

この問題では: 文字列配列の要素を整数に変換するprocessValueメソッドを実装し、NumberFormatExceptionArrayIndexOutOfBoundsExceptionが適切にスローされることを確認します。

学習目標: 1つのメソッドから複数の種類の例外が発生しうることを理解し、それぞれを適切に処理する方法を学ぶ

概要

processValue()メソッドは、クラス内のstatic final文字列配列から指定インデックスの要素を取得し、整数に変換して返します。無効なインデックスや数値に変換できない文字列に対して、適切な例外がスローされます。

仕様

  • クラス内に文字列配列 {"10", "abc", "30"}static finalフィールドVALUESとして定義
  • processValue(int index)メソッド(static):
    • VALUES[index]で要素を取得し、Integer.parseInt()で整数に変換して返す
    • 配列範囲外のインデックス → ArrayIndexOutOfBoundsExceptionがスローされる
    • 数値に変換できない文字列 → NumberFormatExceptionがスローされる
  • main()メソッドで各ケースをtry-catchで処理し、結果またはエラーメッセージを出力

テスト方式

各テストケースはMain.processValue(int)を直接呼び出し、以下を検証します:

  • 有効なインデックス(例: 0, 2)では例外がスローされず正常に値を返すこと
  • 無効なインデックス(例: 1, 5)では適切な例外がスローされること

コードを実行してみませんか?

この問題のコードエディタと実行機能を使用するには、ログインしてください。

アカウントをお持ちでない方

新規登録