java - 使用 Math.round 舍入到小数点后一位?

标签 java decimal rounding

我有这两个变量

double num = 540.512
double sum = 1978.8

然后我做了这个表达

double total = Math.round((num/ sum * 100) * 10) / 10;

但我最终得到 27.0。

事实上,我还有很多其他变量,当我在表达式中使用它们时,我总是在第十位得到一个 0。

最佳答案

我刚刚创建的有用方法...

private static double round (double value, int precision) {
    int scale = (int) Math.pow(10, precision);
    return (double) Math.round(value * scale) / scale;
}

关于java - 使用 Math.round 舍入到小数点后一位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22186778/

相关文章:

java - Oracle Select for update 不起作用,有时会在一段时间后挂起

java - 多个坐标之间的距离

android - HTML5 数字字段不适用于 Android 4 上没有前导零的小数

Python如何计算一个精确到小数的列表字符串?

C# 银行家的舍入误差

java - - 四舍五入并删除小数点后的数字 -

java - 使用在不同的基于 java 的 Spring 配置文件中定义的原型(prototype) beans

java - 如何向netbeans菜单栏添加快捷键?

perl - 比较两个十进制值与perl中的特定范围

c++ - 如何识别 X 的最接近值倍数?