Java中Double类型数据比较大小

方法一:转成字符串之后比较

如果要比较的两个double数据的字符串精度相等,可以将数据转换成string然后借助string的equals方法来间接实现比较两个double数据是否相等。注意这种方法只适用于比较精度相同的数据,并且是只用用于比较是否相等的情况下,不能用来判断大小。

 

 方法二:使用SUN提供的Double.doubleToLongBits()方法

可以将double转换成long型数据,从而可以使double按照long的方法(<, >, ==)判断是否大小和是否相等。

 

 方法三:转成BigDecimal类型比较

利用BigDecimal中的compareTo方法去比较大小

温馨提示:
BigDecimal num = new BigDecimal(2.225667);//这种写法不允许,会造成精度损失。
BigDecimal num = new BigDecimal("2.225667");//一般都会这样写最好。

 

 

posted @ 2022-02-15 11:17  云村的王子  阅读(3789)  评论(0编辑  收藏  举报