お初の書き込みになります。JAWAです。
いきなりですが、try~catchのcatchで、正常系の処理を行うのは
あまり良くないといわれたんですがそんなものでしょうか?
tyr {
Integer.parse(文字);
} catch (NumberFormatException e) {
行いたい処理
}
return; 文字が数字のときは何もしない。
のようなことを行っています。
> あまり良くないといわれたんですがそんなものでしょうか?
はい、あまり良くありません。
理由は、例外的な事態の処理を記述するための構文だから
としか言いようがないですけど。
特に多人数で開発する場合は、常識外のことをすると
勘違いの元になりますから、避けたほうが良いでしょう。
そうは言っても、数字でないことを判定する簡易なAPIがないので、
せめて、こうとか。
try {
Integer.parse(文字);
return; // 数字ならなにもしない
} catch (NumberFormatException e) {}
数字以外の場合の処理
これも許さん!という人がいたら、
NumberFormat.parse() の例外を投げない版を使いましょう。
#自力で文字列解析するメソッドを自作するのはもっと悪
処理がどうこうというより、自分のソースを見る人に、
余計な勘違いを与えてしまうというようなところから悪なんですね。
>try {
> Integer.parse(文字);
> return; // 数字ならなにもしない
>} catch (NumberFormatException e) {}
上記で、いこうと思います。
dairygoodsさん、ありがとうございます。