记一次java四舍五入错误结果的问题()

1.背景

在进行除法计算时,结果不符合预期

2.测试过程

double精度问题,导致四舍五入结果误差

        BigDecimal b1 = new BigDecimal(0.245);
        BigDecimal b2 = new BigDecimal("0.245");
        System.out.println(b1);
        System.out.println(b2);
        System.out.println("------------------------------------");
        System.out.println(b1.setScale(2, BigDecimal.ROUND_HALF_UP));
        System.out.println(b2.setScale(2, BigDecimal.ROUND_HALF_UP));

3.引用

Java避坑之为什么BigDecimal四舍五入之后值是错误的

————————

1.背景

在进行除法计算时,结果不符合预期

2.测试过程

double精度问题,导致四舍五入结果误差

        BigDecimal b1 = new BigDecimal(0.245);
        BigDecimal b2 = new BigDecimal("0.245");
        System.out.println(b1);
        System.out.println(b2);
        System.out.println("------------------------------------");
        System.out.println(b1.setScale(2, BigDecimal.ROUND_HALF_UP));
        System.out.println(b2.setScale(2, BigDecimal.ROUND_HALF_UP));

3.引用

Java避坑之为什么BigDecimal四舍五入之后值是错误的