019-003-008

複数catchブロックの使い分け

初級

問題説明

複数catchブロックの使い分け

この問題では: 文字列を整数に変換するconvertToIntメソッドと、文字列配列から要素を取得するgetElementメソッドを実装します。各メソッドは引数に応じてNumberFormatExceptionまたはArrayIndexOutOfBoundsExceptionをスローします。

学習目標: 複数のcatchブロックを使って異なる種類の例外を個別に処理する方法を理解する

概要

try-catch文では、複数のcatchブロックを並べて異なる例外型を個別に処理できます。より具体的な例外型を先に書く必要があります。

実装するメソッド

convertToInt(String s)int

  • 文字列sを整数に変換して返す
  • 変換できない場合はNumberFormatExceptionをスローする

getElement(String[] arr, int index)String

  • 配列arrのインデックスindexの要素を返す
  • インデックスが範囲外の場合はArrayIndexOutOfBoundsExceptionをスローする

実装例

convertToInt("10")  // → 10
convertToInt("abc") // → NumberFormatException
getElement(new String[]{"10","abc","20"}, 1) // → "abc"
getElement(new String[]{"10","abc","20"}, 5) // → ArrayIndexOutOfBoundsException

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

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

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

新規登録