java中double型数据的加减乘除

java中double型数据的加减乘除
public class Arith{
private static final int DEF_DIV_SCALE = 10 ;

/**
*两个Double数相加
*
@param v1
*
@param v2
*
@return Double
*/
public static Doubleadd(Doublev1,Doublev2){
BigDecimalb1
= new BigDecimal(v1.toString());
BigDecimalb2
= new BigDecimal(v2.toString());
return b1.add(b2).doubleValue();
}

/**
*两个Double数相减
*
@param v1
*
@param v2
*
@return Double
*/
public static Doublesub(Doublev1,Doublev2){
BigDecimalb1
= new BigDecimal(v1.toString());
BigDecimalb2
= new BigDecimal(v2.toString());
return b1.subtract(b2).doubleValue();
}

/**
*两个Double数相乘
*
@param v1
*
@param v2
*
@return Double
*/
public static Doublemul(Doublev1,Doublev2){
BigDecimalb1
= new BigDecimal(v1.toString());
BigDecimalb2
= new BigDecimal(v2.toString());
return b1.multiply(b2).doubleValue();
}

/**
*两个Double数相除
*
@param v1
*
@param v2
*
@return Double
*/
public static Doublediv(Doublev1,Doublev2){
BigDecimalb1
= new BigDecimal(v1.toString());
BigDecimalb2
= new BigDecimal(v2.toString());
return b1.divide(b2,DEF_DIV_SCALE,BigDecimal.ROUND_HALF_UP).doubleValue();
}

/**
*两个Double数相除,并保留scale位小数
*
@param v1
*
@param v2
*
@param scale
*
@return Double
*/
public static Doublediv(Doublev1,Doublev2, int scale){
if (scale < 0 ){
throw new IllegalArgumentException(
" Thescalemustbeapositiveintegerorzero " );
}
BigDecimalb1
= new BigDecimal(v1.toString());
BigDecimalb2
= new BigDecimal(v2.toString());
return b1.divide(b2,scale,BigDecimal.ROUND_HALF_UP).doubleValue();
}

}

你可能感兴趣的:(double)