BigDecimal add 结果为0 解决

    public void testBigDecimal() {
        BigDecimal decimal = BigDecimal.ZERO;

        String x = "5";

        for (int i = 0; i < 3; i++) {
            decimal.add(new BigDecimal(x));
        }
        System.out.println(decimal);
    }

输出结果为 0

    public void testBigDecimal() {
        BigDecimal decimal = BigDecimal.ZERO;

        String x = "5";

        for (int i = 0; i < 3; i++) {
            decimal = decimal.add(new BigDecimal(x));
        }
        System.out.println(decimal);
    }

输出结果为 15

原因 : add 方法不会改变子身的值 需要一个值去接收结果

你可能感兴趣的:(BigDecimal add 结果为0 解决)