龙空技术网

Java中小数之间的比较,1-0.9!=0.1

来杯Java提提神 155

前言:

此时咱们对“java怎么赋值小数”大约比较关注,姐妹们都需要了解一些“java怎么赋值小数”的相关文章。那么小编同时在网上收集了一些对于“java怎么赋值小数””的相关知识,希望看官们能喜欢,咱们快快来学习一下吧!

Java小数之间使用==比较是不靠谱的,通常两小数误差不超过0.00001就说这两个数是相等的。

小数之间直接比较

很明显可以看出1-0.9!=0.1,但是这个不等的结果肯定是错的

造成这个结果的原因就是小数在Java中不能够精确表示,导致小数运算往往存在误差

所以在Java中比较两个小数是否相等,往往比较他们的误差是否超过0.00001来判断

通常情况下小数之间比较

最后附上源码,有兴趣可以验证一下

//小数之间直接比较doubled=1-0.9;System.out.println(d);//1-0.9=0.09999999999999998System.out.println(d==0.1);//false//通常情况下小数之间的比较doubledd=1-0.9;if(Math.abs(dd-0.1)<0.00001){System.out.println("1-0.9=0.1");}

标签: #java怎么赋值小数