- 正規表現を使用する方法: 正規表現を使って文字列が数値のパターンにマッチするかどうかを確認します。
public boolean isNumeric(String str) {
return str.matches("-?\\d+(\\.\\d+)?");
}
- パースを使用する方法:
Integer.parseInt()
、Double.parseDouble()
などのメソッドを使用して、文字列を数値に変換できるかどうかを確認します。もし変換が成功した場合は数値であり、失敗した場合は数値ではありません。
public boolean isNumeric(String str) {
try {
double d = Double.parseDouble(str);
} catch (NumberFormatException nfe) {
return false;
}
return true;
}
- Apache Commons Langを使用する方法:
Apache Commons Langライブラリの
NumberUtils.isCreatable()
メソッドを使用すると、数値かどうかを簡単に判定できます。
import org.apache.commons.lang3.math.NumberUtils;
public boolean isNumeric(String str) {
return NumberUtils.isCreatable(str);
}
これらの方法を使用すると、Javaで文字列が数値かどうかを簡単に判定できます。適切なメソッドを選択して使用してください。また、文字列が整数か小数かどうか、負の数を許容するかどうかなど、特定の条件に合わせてコードを調整することもできます。