在使用BigDecimal类的时候的步骤
1:用double或float构建BigDemcial对象
2:通过调用BigDecimal的加减乘除方法计算
3:把BigDecimal对象转换成int double等类型
1:BigDecimal a = BigDecimal.valueOf(0.44);
BidDecimal b = new BigDecimal(Double.toString(0.22));
2: public BigDecimal add(BidDecial value);//加法
public BigDecimal subtract(BigDecial value);//减法
public BigDecimal multiply(BigDecial value);//乘法
public BigDecimal divide(BigDecial value);//除法
public class Arith { public static double add( double value1, double value2){ BigDecimal b1 = new BigDecimal(Double.valueOf(value1)); BigDecimal b2 = new BigDecimal(Double.valueOf(value2)); return b1.add(b2).doubleValue(); } public static double sub( double value1, double value2){ BigDecimal b1 = new BigDecimal(Double.valueOf(value1)); BigDecimal b2 = new BigDecimal(Double.valueOf(value2)); return b1.subtract(b2).doubleValue(); } public static double mul( double value1, double value2){ BigDecimal b1 = new BigDecimal(Double.valueOf(value1)); BigDecimal b2 = new BigDecimal(Double.valueOf(value2)); return b1.multiply(b2).doubleValue(); } public static double div( double value1, double value2, int scale) throws IllegalAccessException{ if (scale< 0 ){ throw new IllegalAccessException( "精确度不能小于0" ); } BigDecimal b1 = new BigDecimal(Double.valueOf(value1)); BigDecimal b2 = new BigDecimal(Double.valueOf(value2)); return b1.divide(b2, scale).doubleValue(); } }