BigDecimal进行加减乘除计算

以前大部分关于查询计算的逻辑是在sql语句中执行的,但是有时候会出现比较复杂的计算情况,需要我们在代码中进行计算,这个时候使用BigDecimal进行计算会很方便。

BigDecimal num1 = new BigDecimal("10");
BigDecimal num2 = new BigDecimal("5");
BigDecimal num3 = null;

//加法
num3 = num1.add(num2);
System.out.println("num1+num2 = "+num3);

//减法
num3 = num1.subtract(num2);
System.out.println("num1-num2 = "+num3);

//乘法
num3 = num1.multiply(num2);
System.out.println("num1*num2 = "+num3);

//除法
num3 = num1.divide(num2);
System.out.println("num1/num2 = "+num3);

  

计算完之后可能会出现小数的情况,这种情况下需要在相应的加减乘除方法上进行变化,取2位小数且四舍五入的话可以直接在方法后加上.setScale(2, BigDecimal.ROUND_HALF_UP);

BigDecimal num1 = new BigDecimal("10");
BigDecimal num2 = new BigDecimal("5");
BigDecimal num3 = null;

//加法取2位小数且四舍五入
num3 = num1.add(num2).setScale(2, BigDecimal.ROUND_HALF_UP);

  

 

posted @ 2018-09-26 22:14  Alice口袋有糖  阅读(15606)  评论(0编辑  收藏  举报