我想,以确定是否一个String
代表一个Double
。 我期待下面的代码抛出一个NumberFormatException
:
String s = "type1234";
try {
Double val = Double.parseDouble(s);
} catch (NumberFormatException e) {
// Handle exception
e.printStackTrace();
}
相反, val
结束了Infinity
。 我跑的代码在一个标准的JVM和它,事实上,抛出NumberFormatException
它看起来像Android是忽略了主角“典型”,然后解析它为e ^ 1234,这是出于Double
的范围。
这是预期的行为? 如果是这样,什么是更可靠的方法来确定是否一个String
可以解析为Double
?