我想在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。