第一种方式:
BigDecimal netMoney = BigDecimalUtil.multiply( realMoney, BigDecimalUtil.subtract(BigDecimal.ONE, totalRate) ).setScale(2, BigDecimal.ROUND_HALF_UP);
假如realMoney=15, totalRate=0.005
15 *(1-0.005) = 15 * 0.995 = 14.925 约等于 14.93
第二种方式
BigDecimal netMoney = BigDecimalUtil.subtract(realMoney, BigDecimalUtil.multiply(realMoney, totalRate) .setScale(2, BigDecimal.ROUND_HALF_UP));
15-15*0.005 = 15-0.08=14.92
第一种方式 和 第二种方式 相差0.01
第一种方式是金额 乘 费率 最后四舍五入
第二种方式是金额 减去 手续费四舍五入后的值