-1

可能重复:
使用最多两位小数的双精度

嗨,我想将双精度值转换为 6 点,例如如果值是

  -1.00005522000

它应该被转换并导致

  -1.000055

我知道有很多解决方案,但我仍然无法获得价值

如果我使用像

  : -1.79769313486231E308

结果值变成

  -9.22337203668547

我用过参考

http://www.roseindia.net/java/beginners/RoundTwoDecimalPlaces.shtml

java - 如何使用字符串生成器在java中打印最多两位小数?

使用最多两位小数的 double

但没有得到解决方案,所以请任何人都可以帮助我?

4

3 回答 3

6

使用十进制格式。

DecimalFormat df = new DecimalFormat("#.######");
df.format(1.00005522000);

更多信息请点击这里

于 2012-09-10T07:03:22.643 回答
3
double d = 1.00005522000;
String result = String.format("%.6f", d);
于 2012-09-10T07:07:55.140 回答
-1
string str=1.00005522000;
sting[] newstr=str.split(".");
newstr[0];//contains 1
newstr[1];//contains 00005522000
newstr[1].substring[0,5];//it contains  6 numbers
于 2012-09-10T07:18:22.733 回答