public class BigDecimalTest {
public static void main(String[] args){
//加减乘除
BigDecimal b1=new BigDecimal("4");
BigDecimal b2=new BigDecimal("3");
//加饭7
System.out.println(b1.add(b2));
//减法1
System.out.println(b1.subtract(b2));
//乘法12
System.out.println(b1.multiply(b2));
//除法1
System.out.println(b1.divide(b2,BigDecimal.ROUND_HALF_UP));
//比大小
if(b1.compareTo(BigDecimal.ZERO)==-1){
System.out.println("b1小于0");
}else if(b1.compareTo(BigDecimal.ZERO)==1){
System.out.println("b1大于0");
}else if(b1.compareTo(BigDecimal.ZERO)==0){
System.out.println("b1等于0");
}
//小数位数及四舍五入规则
BigDecimal amount=new BigDecimal("50");
BigDecimal taxPoint = amount.multiply(new BigDecimal(0.09 / 1.09));
System.out.println("扣税:"+taxPoint);
//4.12,直接移除多余的小数位
System.out.println(taxPoint.setScale(2,BigDecimal.ROUND_DOWN));
//2.13,进位
System.out.println(taxPoint.setScale(2,BigDecimal.ROUND_UP));
//4.13,四舍五入,碰到5进位
System.out.println(taxPoint.setScale(2,BigDecimal.ROUND_HALF_UP));
//4.13,四舍五入,碰到5舍弃
System.out.println(taxPoint.setScale(2,BigDecimal.ROUND_HALF_DOWN));
}
}