4

私はこの質問に行き詰まっています〜:

メソッド Integer.parseInt は、数字の String をそれが示す int 数値に変換します。

public static int parseInt (String s)
             throws NumberFormatException

parseInt によってスローされた例外をトラップする方法を説明し、その答えをコード例で示してください。

私がこれまで考えてきた私の答えは次のとおりです。

try
{
   System.out.println("incorrect");

}

catch (NumberFormatException n)
{
   System.out.println("WRONG! This is not a number");
}

上記のコードはメインメソッドでのみ使用され、次の例外をトラップする方法がわからないため、この答えは間違っていると感じています。

public static int parseInt (String s)
             throws NumberFormatException.

私は parseInt メソッドの Java API を調べ、さまざまな調査を行い、コードを実行しようとしましたが、理解が不足しているため、これを正しく行うのにまだ苦労しています。

誰かが私を助けてくれたら、感謝します。

4

4 に答える 4

5

これは宿題なので、ヒントだけを示します。メソッドを呼び出しtry、その呼び出しを適切な-catchブロックで囲む必要があります。

于 2012-04-28T20:31:40.677 に答える
2

String numStr = "15A";
try {
  int num = Integer.parseInt(numStr);
} catch (NumberFormatException nfe) {
  // not a number
}
于 2012-04-28T20:31:53.650 に答える
1

トラップ(Javaではキャッチと呼ばれます)例外は、それをスローするメソッド内ではなく(parseInt例では)、呼び出されている場所で発生します。Integer.parseInt(someString)したがって、 try ブロック内に追加すると、例はうまくいきます。

于 2012-04-28T20:39:22.097 に答える
1

それは簡単です、

  • try ブロックでは、何かをしようとします。したがって、文字列の値を数値に解析しようとします。try ブロックには、必要な数のステートメントを記述できます。
  • これが正しく機能しない場合、発生した特定の例外に対応できる catch ブロックがあります (たとえば、何かがうまくいかなかったことをユーザーに伝えます)。
  • さらに、常に実行される finally ブロックがあり、例外が発生したかどうかにかかわらず違いはありません

これが役立つことを願っています。:)

于 2012-04-28T20:38:45.693 に答える