zoukankan      html  css  js  c++  java
  • 精确的double加减乘除运算工具类

    import java.math.BigDecimal;
    
    
    /**
     * 精确的double加减乘除运算
     * @author cyf
     *
     */
    public class DoubleUtil {
        
         /**
         * 提供精确的加法运算。
         *
         * @param v1
         *            被加数
         * @param v2
         *            加数
         * @return 两个参数的和
         */
    
        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();
        }
    
        /**
         * 提供精确的减法运算。
         *
         * @param v1
         *            被减数
         * @param v2
         *            减数
         * @return 两个参数的差
         */
    
        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();
        }
    
        /**
         * 相除
         */
    
        /**
         * * 两个Double数相除 *
         *
         * @param v1 *
         * @param v2 *
         * @return Double
         */
        public static int div(double v1, double v2) {
            BigDecimal b1 = new BigDecimal(v1+"");
            BigDecimal b2 = new BigDecimal(v2+"");
            return (int)b1.divide(b2, 1, BigDecimal.ROUND_HALF_UP)
                    .doubleValue();
        }
        
        
        
        /**
         *   提供精确的乘法运算。
         *   @param   v1   被乘数
         *   @param   v2   乘数
         *   @return   两个参数的积
         */
    
        public   static   double   mul(double   v1,double   v2){
            BigDecimal   b1   =   new   BigDecimal(Double.toString(v1));
            BigDecimal   b2   =   new   BigDecimal(Double.toString(v2));
            return   b1.multiply(b2).doubleValue();
        }
    
    }


    备忘  有问题请大神指证

  • 相关阅读:
    信号的调制
    是否产生latch
    带通采样定理
    傅里叶变换
    信号与傅里叶(下)
    滤波器的相位和信号的时延
    信号与傅里叶级数
    阅读应该是主动的
    Matlab笔记—函数
    网络搭建---IP地址的设置及ping的使用
  • 原文地址:https://www.cnblogs.com/yunfang/p/10414466.html
Copyright © 2011-2022 走看看