我想在Java中打印双精度值而不使用指数形式。

double dexp = 12345678;
System.out.println("dexp: "+dexp);


它显示此E表示法:1.2345678E7

我希望它像这样打印它:12345678

防止这种情况的最佳方法是什么?

最佳答案

您可以将printf()%f结合使用:

double dexp = 12345678;
System.out.printf("dexp: %f\n", dexp);


这将打印dexp: 12345678.000000。如果您不希望小数部分,请使用

System.out.printf("dexp: %.0f\n", dexp);


这使用documentation中解释的格式说明符语言。

原始代码中使用的默认toString()格式拼写为here

10-04 16:24