Thi*_*ame 0 java string double
我想将double转换为字符串.如果我使用Double.toString或String.valueOf,它会给出像5e-10或类似的东西.
如果我有x = 0.00000032我想要字符串"0.00000032",简单.
我做了很长时间,我想知道是否有更好(更短)的方法.
szText += String.format("%.20f", dOutput);
iZeros = 0;
for(int i=szText.length() - 1; i>=0; i--)
{
if(szText.charAt(i) == '0')
++iZeros;
else break;
}
szText = szText.substring(0, szText.length() - iZeros);
Run Code Online (Sandbox Code Playgroud)
可能有更好的选择,但你可以使用类似......
NumberFormat nf = NumberFormat.getNumberInstance();
nf.setMaximumFractionDigits(100);
double x = 0.00000032d;
System.out.println(x);
System.out.println(nf.format(x));
Run Code Online (Sandbox Code Playgroud)
哪个输出
3.2E-7
0.00000032
Run Code Online (Sandbox Code Playgroud)
您可能想要根据maximumFractionDigits您的具体需求来游玩该物业......
| 归档时间: |
|
| 查看次数: |
113 次 |
| 最近记录: |