NC65工作

double类型加减乘除

2019-07-09  本文已影响0人  铁皮农夫

/**

  * double类型加法

  * @param v1

  * @param v2

  * @return

  */

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

  }

  /**

  * double减法

  * @param v1

  * @param v2

  * @return

  */

  public 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

  */

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

  }

  /**

  * double除法

  * @param v1

  * @param v2

  * @param scale 精确到小数点几位

  * @return

  */

  public 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(Double.toString(v1));

      BigDecimal b2 = new BigDecimal(Double.toString(v2));

      return b1.divide(b2,scale,BigDecimal.ROUND_HALF_UP).doubleValue();

  }

上一篇 下一篇

猜你喜欢

热点阅读