BigDecimal类的加减乘除

Posted 东方神话

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BigDecimal类的加减乘除相关的知识,希望对你有一定的参考价值。

BigDecimal类的常用方法 

序号

方    法

类型

描    述

1

public BigDecimal(double val)

构造

将double表示形式转换为BigDecimal

2

public BigDecimal(int val)

构造

将int表示形式转换为BigDecimal

3

public BigDecimal(String val)

构造

将字符串表示形式转换为BigDecimal

4

public BigDecimal add(BigDecimal augend)

普通

加法

5

public BigDecimal subtract(BigDecimal
subtrahend)

普通

减法

6

public BigDecimal multiply(BigDecimal
multiplicand)

普通

乘法

7

public BigDecimal divide(BigDecimal
divisor)

普通

除法

 注意:一般使用构造方法建议使用参数为String的构造,避免精度损失

 

例:进行四舍五入的四则运算

import java.math.BigDecimal;
class MyMath { public static double add(double d1, double d2){
   // 进行加法运算 BigDecimal b1 = new BigDecimal(d1); BigDecimal b2 = new BigDecimal(d2); return b1.add(b2).doubleValue(); }
public static double sub(double d1, double d2){
// 进行减法运算 BigDecimal b1 = new BigDecimal(d1); BigDecimal b2 = new BigDecimal(d2); return b1.subtract(b2).doubleValue(); }
public static double mul(double d1, double d2){
// 进行乘法运算 BigDecimal b1 = new BigDecimal(d1); BigDecimal b2 = new BigDecimal(d2); return b1.multiply(b2).doubleValue(); }
public static double div(double d1,double d2,int len) {
// 进行除法运算
     // len:表示保留小数的位数
     // ROUND_HALF_UP:是BigDecimal的一个常量,表示四舍五入
         BigDecimal b1 = new BigDecimal(d1);
         BigDecimal b2 = new BigDecimal(d2);
         return b1.divide(b2,len,BigDecimal.ROUND_HALF_UP).doubleValue();
     }
}

以上是关于BigDecimal类的加减乘除的主要内容,如果未能解决你的问题,请参考以下文章

java加减乘除是啥类

android 金钱计算BigDecimal+Scale+加减乘除

BigDecimal进行加减乘除计算

BigDecimal 详解

java中bigdecimal 类型的变量怎么相互加减乘除

BigDecimal 加减乘除