BigDecimal对象的使用示例分享
下文是笔者分享的BigDecimal对象的使用示例,如下所示
BigDecimal作为金额对数据处理的示例分享
为什么要使用BigDecimal对象处理金额类型呢?请看笔者下文的示例
以前我们使用float,double数据类型对金额进行计算时
会出现运算结果不准确的问题,如下代码所示
double num = 0.2 + 0.2 + 0.2;
System.out.println("num = " + num);
double num2 = 0.78 - 0.7;
System.out.println("num2 = " + num2);
-------运行以上代码,将输出以下信息--------
num = 0.6000000000000001
num2 = 0.08000000000000007
正是有这些问题的存在,所以我们才在金额计算时
使用BigDecimal数据类型,如下例所示
例:BigDecimal作为金额对数据处理的示例分享
BigDecimal bigD1 = new BigDecimal("9.23230000000000");
BigDecimal bigD2 = new BigDecimal("9.666600000000001");
System.out.println("金额类加法" + bigD1.add(bigD2));
BigDecimal bigD3 = new BigDecimal("9.232300009");
BigDecimal bigD4 = new BigDecimal("9.666600009");
System.out.println("金额类减法" + bigD3.subtract(bigD4));
BigDecimal bigD5 = new BigDecimal("7.6800");
BigDecimal bigD6 = new BigDecimal("4.33");
System.out.println("金额类乘法" + bigD5.multiply(bigD6));
BigDecimal bigD7 = new BigDecimal("10");
BigDecimal bigD8 = new BigDecimal("2");
System.out.println("金额类除法" + bigD7.divide(bigD8));
//保留两位小数
System.out.println(bigD7.divide(bigD8,2,BigDecimal.ROUND_HALF_UP));
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


