将字符串转换为带点的双精度字符串



我需要将字符串值转换为带点的双精度。这是简单的代码

double dValue=Double.parseDouble("999999999.99");
System.out.println(dValue);
output is: 9.9999999999E8

当我给出大约10000或100000的值时,它是有效的。帮我克服这个问题。

您可以使用BigDecimaltoPlainString()

BigDecimal dValue= new BigDecimal("999999999.99");  
System.out.println(dValue.toPlainString());

输出:

999999999.99

您可以使用String.format

System.out.println(String.format("%.2f", dValue));

最新更新