double类型的运算
来源:互联网 发布:淘宝客定向计划描述 编辑:程序博客网 时间:2024/05/16 07:13
import java.math.BigDecimal; 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 new Double(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 new Double(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 new Double(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 new Double(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 new Double(b1.divide(b2, scale, BigDecimal.ROUND_HALF_UP).doubleValue()); } }
0 0
- double类型的运算
- java的double 类型的运算
- double类型数据的精确运算
- Double 类型运算时的精度问题
- Double 类型运算时的精度问题
- Java中Double类型的运算精度
- Double 类型 运算处理
- Double类型运算
- java double类型运算问题
- java之double类型运算
- java中Double类型的运算精度丢失的问题
- 关于java中Double类型的运算精度问题
- 关于java的double类型数据运算精度失真
- 关于java中Double类型的运算精度问题
- double 类型运算时出现的问题及解决方案
- 关于java中Double类型的运算精度问题
- 关于java中Double类型的运算精度问题
- 关于 java 中 Double 类型的运算精度问题
- 459. Repeated Substring Pattern
- 经常忘记或者混淆的一些常用
- android源码下载遇到的坑
- nginx配置location总结及rewrite规则写法
- 混合背包模板
- double类型的运算
- freeswitch函数之zstr
- Android中overridePendingTransition()方法偶尔失效
- 混合背包(不完美的、比较low的)
- 412.leetciode Fizz Buzz(easy)[字符串 整数处理]
- job 作业实例
- ROS基础使用
- 程序不能运行
- 多线程下载、断点续传、进度条展示