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();
        }
    
    }


    备忘  有问题请大神指证

  • 相关阅读:
    项目开发基础概念
    django 对接elasticsearch实现全文检索
    win10安装docker
    Mac VMware Fusion 中修改 centos7 虚拟机的磁盘空间、扩容
    CentOS 7下 YUM 本地仓库的搭建
    mac与虚拟机传输文件
    mac和windows快速锁定电脑
    rpm -qa详解
    虚拟机安装centos6
    mac与iPhone互传文件
  • 原文地址:https://www.cnblogs.com/yunfang/p/10414466.html
Copyright © 2011-2022 走看看