問題
あなたは、複数のデータを処理するユーティリティメソッドを作成しようとしています。
データには不正なものが混じっている可能性があるため、1件ごとに個別の try-catch で例外処理を行い、ログを残しながら全体を安全に処理する必要があります。
以下の仕様に従って処理を実装してください。
要件
- メソッド名は
processData(String[] inputs)とする - 各
inputs[i]をInteger.parseInt()で整数に変換し、100 / 値を計算する - 変換できない文字列(例:
"abc")や、ゼロ除算が発生する文字列(例:"0")が含まれる - 1件ごとに
try-catchで処理し、例外が発生しても他の要素の処理を継続すること - 以下のように出力すること:
- 正常時:
入力 "20" の結果 → 5 - 変換失敗:
入力 "abc" は数値に変換できませんでした - ゼロ除算:
入力 "0" はゼロによる除算エラーです
テストコード(Main.java)
public class Main {
public static void main(String[] args) {
String[] inputs = {"20", "0", "abc", "10"};
ExceptionUtil.processData(inputs);
}
}
ヒント
- 各要素の処理を
for文でループさせる Integer.parseInt()ではNumberFormatExceptionが発生することがある100 / valueの除算ではArithmeticExceptionに注意try-catchを1件ずつ分けて処理すれば、途中でエラーが起きても最後まで処理が続けられる
→ 解答例
実習で理解を深めよう / Practice to deepen your understanding
この内容についてJavaDrillで実際に手を動かして学習できます
Practice with JavaDrill to learn hands-on


