//加法运算
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 精度计算
最新推荐文章于 2025-06-01 15:50:31 发布
本文介绍了一种使用Java的BigDecimal类来提高数值运算精度的方法,包括加法、减法、乘法和除法运算,并提供了考虑小数位数的除法运算实现。
515

被折叠的 条评论
为什么被折叠?



