/**
* BigDecimal初始化小数时,尽量用字符串形式,例如new BigDecimal("0.1");
* BigDecimal类型变量比较大小时用compareTo方法,判断变量值是否为0,与BigDecimal.ZERO比较大小。
* BigDecimal作除法时,除了要考虑除数是否为0,更要考虑是否能除尽的问题,
* 直接调用BigDecimal divide(BigDecimal divisor, int scale, int roundingMode)方法做除法可以避免除不尽的问题。
*/
@Test
public void main() {
BigDecimal num = new BigDecimal("0.090100");
BigDecimal num2 = new BigDecimal("0.0901100");
double b = 3.34;
BigDecimal num3 = new BigDecimal(b + "");
BigDecimal num4 = new BigDecimal("2.5");
BigDecimal num5 = new BigDecimal("6.2");
System.out.println(num.subtract(num2));
System.out.println(num.subtract(num2).add(num3));
System.out.println(num.subtract(num2).add(num3).multiply(num4));
System.out.println(num.subtract(num2).add(num3).multiply(num4).divide(num5, 10, BigDecimal.ROUND_HALF_DOWN));
}