長い値を取るテキストフィールドがあり、文字を取る場合はエラーメッセージを表示する必要があります。その変数に文字が含まれているかどうかを長い間チェックする isNAN() のような方法はありますか?
質問する
1502 次
5 に答える
1
次のような小さなユーティリティメソッドを使用できます。
private boolean isLong(String str){
try{
Long.parseLong(str);
}
catch(NumberFormatException nfe){
return false;
}
return true;
}
于 2013-01-23T10:40:07.943 に答える
1
文字列に解析可能な long が含まれていない場合、静的メソッドLong.parseLong()
は をスローします。NumberFormatException
于 2013-01-23T10:36:59.870 に答える
1
通常、これを行うには、 をキャッチLong.parseLong(textfield.getText())
するブロックでラップすることを試みます。try
catch
NumberFormatException
例外がキャッチされた場合、ユーザーが有効な値を入力しなかったことを意味しlong
ます。
于 2013-01-23T10:37:55.497 に答える
1
long x = Long.parseLong("12345L");
NumberFormatException をスローする可能性があるため、上記のステートメントをキャッチしてみてください。
于 2013-01-23T10:38:04.153 に答える
0
他のソリューションの代わりとして、正規表現を使用できます
boolean containsCharacters = !txt.matches("-?\\d+");
于 2013-01-23T10:43:09.280 に答える