↓ 跳过正文

java四舍五入

正能量 1 分钟阅读 更新于 2026-10-18

解释 Java 示例怎样用 BigDecimal 保留小数位,并补充浮点输入和舍入方式的注意事项。

Java 编程:原站配图。
/**
     * 四舍五入
     * @date 2013-5-10上午11:53:29
     * @author Kevin
     * @param f 参数
     * @param rang 保留小数位数
     * @return
     */
    private static double round(double f, int rang) {
        BigDecimal b = new BigDecimal(f);
        double f1 = b.setScale(rang, BigDecimal.ROUND_HALF_UP).doubleValue();
        return f1;
    }

补充阅读
#

解释 Java 示例怎样用 BigDecimal 保留小数位,并补充浮点输入和舍入方式的注意事项。

如何理解与使用
#

原方法的 rang 表示小数位数,返回值仍是 double,因此保留两位小数不代表输出时一定显示两个尾随零。展示格式与数值计算需要分开处理。

验证与边界
#

new BigDecimal(double) 会保留二进制浮点近似值;十进制业务输入可优先使用字符串构造或 valueOf。新代码使用 RoundingMode.HALF_UP 表达舍入规则,测试时覆盖负数、边界值与尾随零。

参考:BigDecimal(本次补充核对)。