我试图将 double 四舍五入到最接近的两位小数,但是,它只是四舍五入到最接近的整数。
例如,19634.0 而不是 19634.95。
这是我用于四舍五入的当前代码
double area = Math.round(Math.PI*Radius()*Radius()*100)/100;
我看不出哪里错了。
非常感谢您的帮助。
最佳答案
嗯,Math.round(Math.PI*Radius()*Radius()*100)
是长
。 100
是 int
。
所以 Math.round(Math.PI*Radius()*Radius()*100)/100
将变成 long
(19634
).
将其更改为 Math.round(Math.PI*Radius()*Radius()*100)/100.0
。 100.0
是double
,结果也将是double
(19634.95
)。
关于Java,四舍五入到小数点后两位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16442039/