概述
java中double型数据的加减乘除
public
class
Arith {
private static final int DEF_DIV_SCALE = 10 ;
/**
* 两个Double数相加
* @param v1
* @param v2
* @return Double
*/
public static Double add(Double v1,Double v2){
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = new BigDecimal(v2.toString());
return b1.add(b2).doubleValue();
}
/**
* 两个Double数相减
* @param v1
* @param v2
* @return Double
*/
public static Double sub(Double v1,Double v2){
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = new BigDecimal(v2.toString());
return b1.subtract(b2).doubleValue();
}
/**
* 两个Double数相乘
* @param v1
* @param v2
* @return Double
*/
public static Double mul(Double v1,Double v2){
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = new BigDecimal(v2.toString());
return b1.multiply(b2).doubleValue();
}
/**
* 两个Double数相除
* @param v1
* @param v2
* @return Double
*/
public static Double div(Double v1,Double v2){
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = 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 Double div(Double v1,Double v2, int scale){
if (scale < 0 ){
throw new IllegalArgumentException(
" The scale must be a positive integer or zero " );
}
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = new BigDecimal(v2.toString());
return b1.divide(b2,scale,BigDecimal.ROUND_HALF_UP).doubleValue();
}
}
private static final int DEF_DIV_SCALE = 10 ;
/**
* 两个Double数相加
* @param v1
* @param v2
* @return Double
*/
public static Double add(Double v1,Double v2){
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = new BigDecimal(v2.toString());
return b1.add(b2).doubleValue();
}
/**
* 两个Double数相减
* @param v1
* @param v2
* @return Double
*/
public static Double sub(Double v1,Double v2){
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = new BigDecimal(v2.toString());
return b1.subtract(b2).doubleValue();
}
/**
* 两个Double数相乘
* @param v1
* @param v2
* @return Double
*/
public static Double mul(Double v1,Double v2){
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = new BigDecimal(v2.toString());
return b1.multiply(b2).doubleValue();
}
/**
* 两个Double数相除
* @param v1
* @param v2
* @return Double
*/
public static Double div(Double v1,Double v2){
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = 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 Double div(Double v1,Double v2, int scale){
if (scale < 0 ){
throw new IllegalArgumentException(
" The scale must be a positive integer or zero " );
}
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = new BigDecimal(v2.toString());
return b1.divide(b2,scale,BigDecimal.ROUND_HALF_UP).doubleValue();
}
}
最后
以上就是美丽大碗为你收集整理的java中double型数据的加减乘除 的全部内容,希望文章能够帮你解决java中double型数据的加减乘除 所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复