Javaの数値チェックについて

Java初心者なのでちゃんと理解できてないだけかもしれないけど、 Javaで数値かチェックするときって以下のようにするのが一般的なんだろうか?

public boolean isNumeric(String input) {
  try {
    Integer.parseInt(input);
    return true;
  }
  catch (NumberFormatException e) {
    // s is not numeric
    return false;
  }
}

「0~9」以外の文字を入力されたくない場所で上記のような判定ロジック入れてる場合、

「-000」って入力されると例外にならないよねーと思い。