其实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后面一定要带上进度算法,要不然会因为精度丢失问题,出现内部错误

相关文章:

  • 2021-06-05
  • 2021-11-18
  • 2022-12-26
  • 2022-12-23
  • 2021-11-15
猜你喜欢
  • 2021-09-30
  • 2021-09-07
  • 2022-12-23
  • 2021-08-14
  • 2021-07-10
相关资源
相似解决方案