如何在Android中舍入十进制数

时间:2011-09-19 14:28:31

标签: java android

  

可能重复:
  Double value to round up in Java

我得到浮点数作为输入,我希望它在小数点后舍入到2位数。 即,例如,如果我输入18.965518,我希望它是18.97。怎么做?

2 个答案:

答案 0 :(得分:37)

DecimalFormat使用String(因此分配额外的内存),与

相比,开销很大
(float)Math.round(value * 100) / 100

答案 1 :(得分:34)

您可以使用DecimalFormat对象,类似于常规Java。

尝试

double roundTwoDecimals(double d)
{
    DecimalFormat twoDForm = new DecimalFormat("#.##");
    return Double.valueOf(twoDForm.format(d));
}

(代码示例取自http://www.java-forums.org/advanced-java/4130-rounding-double-two-decimal-places.html