//加法运算
public static double add(double v1, double v2){
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.add(b2).doubleValue();
}
//减法运算
public static double sub(double v1, double v2){
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.subtract(b2).doubleValue();
}
//乘法运算
public static double multiply(double v1, double v2){
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.multiply(b2).doubleValue();
}
//除法运算
public static double divide(double v1, double v2){
if(v2 <= 0){
return 0;
}else{
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.divide(b2, 6, BigDecimal.ROUND_HALF_UP).doubleValue();
}
}
/**
* 除法运算
* @param v1
* @param v2
* @param scale 小数位数
* @return
*/
public static double divide(double v1, double v2, int scale){
if(v2 <= 0){
return 0;
}else{
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.divide(b2, scale, BigDecimal.ROUND_HALF_UP).doubleValue();
}
}
java double float 精度计算
最新推荐文章于 2023-05-29 17:57:28 发布