BigDecimal 比较、运算、精度

创建 BigDecimal

建议使用 public BigDecimal(String val),使用 number 参数可能会有精度问题

设置精度

setScale(3, BigDecimal.ROUND_HALF_UP),取三位小数,四舍五入

比较大小

使用方法 compareTo() 来比较

if(a.compareTo(b) == 0){
  // ab 相等
}

if(a.compareTo(b) == 1){
  // a > b
}

if(a.compareTo(b) == -1){
  // a < b
}

数学运算

// 加法
a.add(b);
// 减法
a.subtract(b);
// 乘法
a.multiply(b)
// 除法(要指定精度,比如1/3)
a.divide(b, 2, BigDecimal.ROUND_HALF_UP)
posted @ 2023-02-10 22:33  CyrusHuang  阅读(70)  评论(0编辑  收藏  举报