java.math.BigDecimal类multiply的使用

Posted 潜念

tags:

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

其实java的float只能用来进行科学计算或工程计算,在大多数的商业计算中,一般采用java.math.BigDecimal类来进行精确计算。
在使用BigDecimal类来进行计算的时候,主要分为以下步骤:
1、用float或者double变量构建BigDecimal对象。
2、通过调用BigDecimal的加,减,乘,除等相应的方法进行算术运算。
3、把BigDecimal对象转换成float,double,int等类型。
一般来说,可以使用BigDecimal的构造方法或者静态方法的valueOf()方法把基本类型的变量构建成BigDecimal对象。

BigDecimal b1 = new BigDecimal(Double.toString(0.48));
BigDecimal b2 = BigDecimal.valueOf(0.48);


public BigDecimal add(BigDecimal value);//加法
public BigDecimal subtract(BigDecimal value); //减法 
public BigDecimal multiply(BigDecimal value); //乘法
public BigDecimal divide(BigDecimal value); //除法

通过这些方法进行结果的计算,最后进行精度确定

new BigDecimal("1225.125").setScale(2, RoundingMode.HALF_UP)
new BigDecimal("1225.121").setScale(2,BigDecimal.ROUND_HALF_UP)

.setScale后面一定要带上进度算法,要不然会因为精度丢失问题,出现内部错误

以上是关于java.math.BigDecimal类multiply的使用的主要内容,如果未能解决你的问题,请参考以下文章

Java中BigDecimal类介绍及用法

BigDecimal

BigInteger与BigDecimal

java.math.BigDecimal cannot be cast to java.lang.String

数学类

java之BigDecimal类