Java 如何从零开始四舍五入

Java 如何从零开始四舍五入,java,Java,我注意到舍入的定义是:我希望所有结果都舍入到小数点后3位,但我不知道如何用java计算 例如,0.3333333将四舍五入为0.333,与数学定义完全相同: ((int) (-Math.sign(y) * Math.ceil(-Math.abs(y*1000) - 500))) / 1000.0 与数学定义完全相同: ((int) (-Math.sign(y) * Math.ceil(-Math.abs(y*1000) - 500))) / 1000.0 当我尝试0.333333时,结果是0

我注意到舍入的定义是:我希望所有结果都舍入到小数点后3位,但我不知道如何用java计算


例如,0.3333333将四舍五入为0.333,与数学定义完全相同:

((int) (-Math.sign(y) * Math.ceil(-Math.abs(y*1000) - 500))) / 1000.0

与数学定义完全相同:

((int) (-Math.sign(y) * Math.ceil(-Math.abs(y*1000) - 500))) / 1000.0

当我尝试0.333333时,结果是0.0,但我想要0.333哦,我想我的乘法在错误的位置,我会修正它假设公式是正确的,现在应该可以了,我得到0.833:)它更接近;-)但这一定是公式的问题…当我尝试0.333333时,结果是0.0,但我想要0.333哦,我想我的乘法在错误的位置,我会修正它假设公式是正确的,现在应该可以了,现在我得到0.833:)它更接近;-)但这一定是公式的问题了。。。