我正在尝试确定 a 是否String
代表 a 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
' 范围。
这是预期的行为吗?如果是这样,确定 a 是否String
可以解析为 a的更可靠方法是Double
什么?