zoukankan      html  css  js  c++  java
  • JAVA BigDecimal 高精度运算

     文章参考一位博友,由于时间太久忘了链接,见谅!

     1 public class BigDecimalUtils {
     2 
     3     private static final int DIV_SCALE = 10;// 除法精度(除不尽时保留10为小数)
     4 
     5     /** 小数精确加法 */
     6     public static double add(double d1, double d2) {
     7         BigDecimal bd1 = BigDecimal.valueOf(d1);
     8         BigDecimal bd2 = BigDecimal.valueOf(d2);
     9         return bd1.add(bd2).doubleValue();
    10     }
    11 
    12     /** 小数精确减法 */
    13     public static double sub(double d1, double d2) {
    14         BigDecimal bd1 = BigDecimal.valueOf(d1);
    15         BigDecimal bd2 = BigDecimal.valueOf(d2);
    16         return bd1.subtract(bd2).doubleValue();
    17     }
    18 
    19     /** 小数精确乘法 */
    20     public static double mul(double d1, double d2) {
    21         BigDecimal bd1 = BigDecimal.valueOf(d1);
    22         BigDecimal bd2 = BigDecimal.valueOf(d2);
    23         return bd1.multiply(bd2).doubleValue();
    24     }
    25 
    26     /** 小数精确除法 */
    27     public static double div(double d1, double d2) {
    28         BigDecimal bd1 = BigDecimal.valueOf(d1);
    29         BigDecimal bd2 = BigDecimal.valueOf(d2);
    30         /*
    31          * 当除不尽时,以四舍五入的方式(关于除不尽后的值的处理方式有很多种)保留小数点后10位小数
    32          */
    33         return bd1.divide(bd2, DIV_SCALE, BigDecimal.ROUND_HALF_UP)
    34                 .doubleValue();
    35     }
    36 }
  • 相关阅读:
    React之JSX语法
    Visual Studio Code 使用 Typings 实现智能提示功能
    React.js 之hello word
    Linux命令详解-cd
    Linux命令详解-ls
    linux常用命令
    LINUX系统配置相关
    netsh
    Visual Studio
    乘法算术表
  • 原文地址:https://www.cnblogs.com/FlyingPuPu/p/6598451.html
Copyright © 2011-2022 走看看