我试图理解为什么java不会用科学记数法格式化表示双精度的字符串:我的代码:
public static void main(String... args)
{
System.out.println(String.format("%.6f", 2.898550724637681E-7));
}
这将打印:
0.000000
虽然我希望28985507.2463768
"非科学"十进制版本是28,985,507.24637681
数字 2.898550724637681E-7 实际上是 0.0000002898550724637681。当您使用 6 位小数打印时,该数字实际上是 0。