BigDecimal
Double存储的是近似值,在计算时会出现误差,所以精确计算浮点数时就用到了BigDecimal类
使用方法及注意
public class Demo06 {
public static void main(String[] args) {
BigDecimal bd1=new BigDecimal("1.0");
BigDecimal bd2=new BigDecimal("0.9");
//减法
BigDecimal r1=bd1.subtract(bd2);
System.out.println(r1);
//加法
BigDecimal r2=bd1.add(bd2);
System.out.println(r2);
//乘法
BigDecimal r3=bd1.multiply(bd2);
System.out.println(r3);
//除法
BigDecimal r4=new BigDecimal("1.4").subtract(new BigDecimal("0.5"))
.divide(bd2);
System.out.println(r4);
//除不尽保留两位小数并四舍五入
BigDecimal r5=new BigDecimal("10").divide(new BigDecimal("3"),2,BigDecimal.ROUND_HALF_UP);
}
}