10、比较Bigdecimal类型是否相等的方法

2023-02-27,,

一、Bigdecimal.equals()详解:

Bigdecimal的equals方法不仅仅比较值的大小是否相等,首先比较的是scale(scale是bigdecimal的保留小数点位数),也就是说,不但值得大小要相等,保留位数也要相等,equals才能返回true。

二、采用compareTo()方法比较Bigdecimal类型是否相等:

用b.compareTo(BigDecimal.ZERO)==0,可以比较是否等于0,返回true则等于0,返回false,则不等于0

三、代码demo:

import java.math.BigDecimal;

public class BigDecimalDemo {
// 注:
// Bigdecimal的equals方法不仅仅比较值的大小是否相等,
// 首先比较的是scale(scale是bigdecimal的保留小数点位数),
// 也就是说,不但值的大小要相等,保留位数也要相等,equals才能返回true。
/**
* demo01()
* @return
* ---》bigDecimal = 0
* ---》true
* */
public static void demo01 () {
BigDecimal bigDecimal = new BigDecimal(0.0);
BigDecimal bigDecimal1 = new BigDecimal(0);
if (bigDecimal.equals(bigDecimal1)) {
System.out.println("bigDecimal = " + bigDecimal);
System.out.println("true");
} else {
System.out.println("bigDecimal = " + bigDecimal);
System.out.println("false");
}
} /**
* demo02()
* @return
* ---》bigDecimal = 0.0000
* ---》false
* */
public static void demo02 () {
BigDecimal bigDecimal = new BigDecimal(0.0).setScale(4, BigDecimal.ROUND_HALF_UP);
BigDecimal bigDecimal1 = new BigDecimal(0).setScale(3, BigDecimal.ROUND_HALF_UP);
if (bigDecimal.equals(bigDecimal1)) {
System.out.println("bigDecimal = " + bigDecimal);
System.out.println("true");
} else {
System.out.println("bigDecimal = " + bigDecimal);
System.out.println("false");
}
}
/**
* demo03()
* @return
* ---》bigDecimal = 0.0000
* ---》true
*
* compareTo()方法
* 返回值
* 1、如果指定的数与参数相等返回 0。
* 2、如果指定的数小于参数返回 -1。
* 3、如果指定的数大于参数返回 1。
* */
public static void demo03 () {
BigDecimal bigDecimal = new BigDecimal(0.0).setScale(4, BigDecimal.ROUND_HALF_UP);
BigDecimal bigDecimal1 = new BigDecimal(0).setScale(3, BigDecimal.ROUND_HALF_UP);
//比较是否等于0: b.compareTo(BigDecimal.ZERO)==0
if (bigDecimal.compareTo(bigDecimal1) == 0) {
System.out.println("bigDecimal = " + bigDecimal);
System.out.println("true");
} else {
System.out.println("bigDecimal = " + bigDecimal);
System.out.println("false");
}
} public static void main(String[] args) {
demo01();
demo02();
demo03();
}
}

搜索

复制

10、比较Bigdecimal类型是否相等的方法的相关教程结束。

《10、比较Bigdecimal类型是否相等的方法.doc》

下载本文的Word格式文档,以方便收藏与打印。