字符串到双精度,在java中没有指数科学



我需要将字符串解析为双精度,但是使用我当前的代码,我在其中获得了指数表示法

String str = "10000000";
Double parsedString = Double.valueOf(str);

它给了我 1.0E7。 我需要输出 10000000

有什么帮助吗?

你可以为此调用一个方法。

Double parseStringToDouble = validate(str);

验证方法的定义将是

private Double validate(String s) {
try{
return Double.valueOf(s);
} catch(NumberFormatException nfe){
// you can throw your custom exception here.
}
}

有了这个,您将不会得到任何指数符号。

这是数字Double显示方式。如果要以不同的方式显示数字,则必须对其进行格式化:

System.out.printf("%.0f", number);

最新更新