Double.parseDouble() 异常

Double.parseDouble() Exception

我有这个十进制格式:

DecimalFormat formatSci = new DecimalFormat("#.#########E0");

当我有

text.append(formatSci.format(answer));//answer is a double value

之后:

double b = Double.parseDouble(text.toString());//text is something like 2.3333333E10

它抛出 NumberFormatException。这有什么问题,因为它显然适用于 android 4.4.4 及更高版本,而不适用于旧版本?

这可能是由于您的内部区域设置规范所致。

尝试使用:

NumberFormat format = NumberFormat.getInstance(Locale.US);
Number number = format.parse(text.toString());
double d = number.doubleValue();
// OR
double d = Double.parseDouble(text.toString());