BigDecimal加减乘除比较大小保留小数位
Posted 抓手
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BigDecimal加减乘除比较大小保留小数位相关的知识,希望对你有一定的参考价值。
简单加减乘除
public static void main(String[] args) {
BigDecimal a = new BigDecimal("8");
BigDecimal b = new BigDecimal("4");
System.out.println("a = " + a);
System.out.println("b = " + b);
// 加法
BigDecimal add = a.add(b);
System.out.println("a + b = " + add);
// 减法
BigDecimal subtract = a.subtract(b);
System.out.println("a - b = " + subtract);
// 乘法
BigDecimal multiply = a.multiply(b);
System.out.println("a × b = " + multiply);
// 除法
BigDecimal divide = a.divide(b);
System.out.println("a ÷ b = " + divide);
}
保留小数位的加减乘除
public static void main(String[] args) {
BigDecimal a = new BigDecimal("8.21");
BigDecimal b = new BigDecimal("4.53");
System.out.println("a = " + a);
System.out.println("b = " + b);
// 加法
BigDecimal add = a.add(b);
System.out.println("a + b = " + add);
// 减法
BigDecimal subtract = a.subtract(b);
System.out.println("a - b = " + subtract);
// 乘法(保留两位小数,四舍五入)
BigDecimal multiply = a.multiply(b).setScale(2, BigDecimal.ROUND_HALF_UP);
System.out.println("a × b = " + multiply);
// 除法(保留两位小数,四舍五入)
BigDecimal divide = a.divide(b, 2, BigDecimal.ROUND_HALF_UP);
System.out.println("a ÷ b = " + divide);
}
比较大小
public static void main(String[] args) {
BigDecimal a = new BigDecimal("8.21");
BigDecimal b = new BigDecimal("4.53");
// 等同于 a == b
System.out.println(a.compareTo(b) == 0);
// 等同于 a < b
System.out.println(a.compareTo(b) < 0);
// 等同于 a > b
System.out.println(a.compareTo(b) > 0);
System.out.println("----------");
BigDecimal c = new BigDecimal("-1");
BigDecimal d = new BigDecimal("-1");
// 等同于 a == b
System.out.println(c.compareTo(d) == 0);
// 等同于 a <= b
System.out.println(c.compareTo(d) <= 0);
// 等同于 a >= b
System.out.println(c.compareTo(d) >= 0);
}
保留小数位的方式:BigDecimal保留小数的其他处理方式
以上是关于BigDecimal加减乘除比较大小保留小数位的主要内容,如果未能解决你的问题,请参考以下文章