在使用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();
- }
- }