Stringaがを表すかどうかを判断しようとしていDoubleます。私は次のコードが:をスローすることを期待していますNumberFormatException:
String s = "type1234";
try {
Double val = Double.parseDouble(s);
} catch (NumberFormatException e) {
// Handle exception
e.printStackTrace();
}
代わりに、でval終わりますInfinity。私は標準のJVMでコードを実行しましたが、実際にスローされますNumberFormatException
Androidが先頭の文字「typ」を無視してe^1234として解析しているようです。これはDouble「」の範囲外です。
これは予想される動作ですか?Stringもしそうなら、aがとして解析できるかどうかを判断するためのより信頼できる方法は何Doubleですか?