概述
背景:
近写BigDecimal的数字比较,123和123.00居然被认为是不等的两个数
测试效果如下:
后翻源码发现:
1.equals方法比较value和scale(数值和精度),精度不一样,也返回false
2.compareTo的描述,数值相同但是精度不同的两个数(例如123和123.00)被认为是相等的两个数,返回0
另附a.compareTo(b)方法的返回含义
a<b, 返回-1
a=b,返回0
a>b, 返回1
最后
以上就是听话白昼为你收集整理的BigDecimal的比较用compareTo而不是equals的全部内容,希望文章能够帮你解决BigDecimal的比较用compareTo而不是equals所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复