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如何比较文件内容的差异 如何对比文件内容的差异
java常用类详细介绍及总结:字符串相关类日期时间API比较器接口SystemMathBigInteger与BigDecimal