double计算
public class DoubleMaths {
/** 返回DOUBLE相加 */ public static double sum(double d1, double d2) { BigDecimal bd1 = BigDecimal.valueOf(d1); BigDecimal bd2 = BigDecimal.valueOf(d2); return bd1.add(bd2).doubleValue(); }
/** 返回DOUBLE相减 */ public static double sub(double d1, double d2) { BigDecimal bd1 = BigDecimal.valueOf(d1); BigDecimal bd2 = BigDecimal.valueOf(d2); return bd1.subtract(bd2).doubleValue(); }
/** 返回DOUBLE相减,BigDecimal类型 */ public static BigDecimal subBig(double d1, double d2) { BigDecimal bd1 = BigDecimal.valueOf(d1); BigDecimal bd2 = BigDecimal.valueOf(d2); return bd1.subtract(bd2); }
/** DOUBLE带精度的相除,避免无限循环 */ public static BigDecimal divBig(double d1, double d2, int scale) { BigDecimal bd1 = BigDecimal.valueOf(d1); BigDecimal bd2 = BigDecimal.valueOf(d2); return bd1.divide(bd2, scale, BigDecimal.ROUND_HALF_UP); }
/** DOUBLE带精度的相除,避免无限循环 */ public static double div(double d1, double d2, int scale) { BigDecimal bd1 = BigDecimal.valueOf(d1); BigDecimal bd2 = BigDecimal.valueOf(d2); return bd1.divide(bd2, scale, BigDecimal.ROUND_HALF_UP).doubleValue(); }
/** 返回DOUBLE相除,BigDecimal类型 */ public static BigDecimal divBig(double d1, double d2) { BigDecimal bd1 = BigDecimal.valueOf(d1); BigDecimal bd2 = BigDecimal.valueOf(d2); return bd1.divide(bd2); }
/** 返回DOUBLE相除 */ public static double div(double d1, double d2) { BigDecimal bd1 = BigDecimal.valueOf(d1); BigDecimal bd2 = BigDecimal.valueOf(d2); return bd1.divide(bd2).doubleValue(); }
/** 返回DOUBLE相乘 */ public static BigDecimal muBig(double d1, double d2) { BigDecimal bd1 = BigDecimal.valueOf(d1); BigDecimal bd2 = BigDecimal.valueOf(d2); return bd1.multiply(bd2); }
/** 返回DOUBLE相乘 */ public static double mu(double d1, double d2) { BigDecimal bd1 = BigDecimal.valueOf(d1); BigDecimal bd2 = BigDecimal.valueOf(d2); return bd1.multiply(bd2).doubleValue(); }
}