将数字舍入为特定倍数

jus*_*ric 8 java math function rounding

如何在Java中舍入到特定的倍数?在excel中,有一个mround函数允许轻松舍入到指定的倍数,如下所示:

    mRound(variable,multiple)
Run Code Online (Sandbox Code Playgroud)

所以如果和如果mRound(x,3)会回来.9x = 7.96x = 7.2

到目前为止我找到的所有舍入函数总是舍入到最接近的整数或指定的小数位数,但我希望能够为每个变量更改倍数.有谁知道这种情况最适合哪种功能?

Ry-*_*Ry- 19

只需除以数字,然后乘以数字即可.

double mRound(double value, double factor) {
    return Math.round(value / factor) * factor;
}
Run Code Online (Sandbox Code Playgroud)