做床上用品网站,在哪个网站上做实验仪器比较好,seo专业培训机构杭州,建网站和软件需要什么1.我之前用来判断Bigdecimal类型是否等于0的方法
b.equals(BigDecimal.ZERO);
用equals方法和BigDecimal.ZERO进行比较。
2.上面方法存在的问题
有一天#xff0c;调用这个这句代码的时候#xff0c;传入的确实是0#xff0c;但却返回false
查看源代码发现#xff1a;…1.我之前用来判断Bigdecimal类型是否等于0的方法
b.equals(BigDecimal.ZERO);
用equals方法和BigDecimal.ZERO进行比较。
2.上面方法存在的问题
有一天调用这个这句代码的时候传入的确实是0但却返回false
查看源代码发现 Bigdecimal的equals方法不仅仅比较值的大小是否相等首先比较的是scalescale是bigdecimal的保留小数点位数比如 new Bigdecimal(“1.001”),scale为3也就是说不但值得大小要相等保留位数也要相等equals才能返回true。
Bigdecimal b new Bigdecimal(“0”) 和 Bigdecimal c new Bigdecimal(“0.0”),用equals比较返回就是false。
Bigdecimal.ZERO的scale为0。
所以用equals方法要注意这一点。
3.用b.compareTo(BigDecimal.ZERO)0可以比较是否等于0返回true则等于0返回false则不等于0