ユーザー入力が文字列か数値かを確認する必要があります。
目的のために以下のステートメントを使用します。
Double.parseDouble(string);
ほとんどのシナリオで機能しますが、ユーザーが入力した入力が 123Fのような場合は失敗します
これは文字列と見なす必要がありますが、上記のケースでは数値と見なされます。私も使ってみました
NumberUtils.isNumber(string);
それでも動作は同じです。
動作する次の正規表現パターンを試しました
"-?\\d+(\\.\\d+)?"
ただし、同じための他の代替 API はありますか。