Java中Double型数据的加,减,乘,除
来源:互联网 发布:python write 编辑:程序博客网 时间:2024/06/05 20:16
public class DoubleArith {
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();
}
}
/**
* 两个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();
}
}
0 0
- Java中Double型数据的加,减,乘,除
- java中处理大型int数据(加、减、乘、除)
- BigDecimal 类型数据的加、减、乘、除以及格式化
- java 浮点数的加、减、乘、除工具类
- java实现大数加、减、乘、除
- 复数类的加,减,乘,除
- 数的加 减 乘 除
- BigDecimal的加 减 乘 除
- BigDecimal的加、减、乘、除
- 大数 加 减 乘 除
- Linux 加,减,乘,除
- C语言中,位运算完成 加、减、乘、除
- java String实现加,减,乘,除运算。
- 大数的加,减,乘,除,乘方运算
- linux下的shell运算(加、减、乘、除)
- 解决大数的,加、减、乘、除问题
- OC---分数的加、减、乘、除、比较大小
- 挑战面试编程:大整数的加、减、乘、除
- string数据类型
- bootstrapValidator 自定验证方法写法
- 内存泄露
- 我在开发上传图片文件预览的时候IE无法正常显示,火狐可以正常显示
- Unity3D Shader官方教程翻译(四)
- Java中Double型数据的加,减,乘,除
- SonicUI在MFC中的使用
- Android Graphics(二):路径及文字
- 4.1 MySQL程序概述
- printStream类和PrintWriter类
- Ubuntu Linux 查看、编辑、比较二进制文件
- 反射相关知识
- QT SSL OpenSSL https
- 计算机视觉中的边缘检测