BigDecimal对比大小使用compare而不使用equals

Posted

tags:

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

参考技术A 在bigdecimal的对比大小中,建议使用compare而不是使用equals。

按理说0和0.00应该是相等,但在上图中发现返回结果却是false。

equals源码:

可以发现当小数位scale不等时,自动返回了false。
compare源码:

signnum源码:

compare源码可见,先对小数位scale进行了对比,如果不等,又将两个数进行了转换,转成int,对比int的大小。

以上是关于BigDecimal对比大小使用compare而不使用equals的主要内容,如果未能解决你的问题,请参考以下文章

怎样用Beyond Compare进行代码的合并与对比

Beyond Compare如何比较文件内容的差异 如何对比文件内容的差异

beyond compare怎么用

字符串对比

iOS 使用compare 进行对比

java常用类详细介绍及总结:字符串相关类日期时间API比较器接口SystemMathBigInteger与BigDecimal