java - 为什么 new BigDecimal ("0.015").compareTo(new BigDecimal(0.015)) 返回 -1?

标签 java bigdecimal

<分区>

为什么 new BigDecimal("0.015").compareTo(new BigDecimal(0.015)) 返回 -1? 如果我希望这两者相等,是否有其他方法来比较它们?

最佳答案

由于浮点运算的不精确性,它们并不完全相等

System.out.println(new BigDecimal(0.015));

展示

0.01499999999999999944488848768742172978818416595458984375

关于java - 为什么 new BigDecimal ("0.015").compareTo(new BigDecimal(0.015)) 返回 -1?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32831308/

相关文章:

java - 即使我有监听器和@EvenHandler,为什么事件没有被激活?

java - Apache POI 数据格式限制与方法调用

angular - 将数字类型转换为 BigDecimal TypeScript(Angular)

Java : BigDecimal - Print the number has input

java - 可选同时类型转换

java - Java 中用于零的等于运算符(BigDecimal/Double)

java - BigDecimal setScale 被忽略了吗?

java - Jackson JSON-RPC 反序列化为通用对象

java - 在Java中同时实现Map和List接口(interface)?

java - 使用增量时间使运动平滑的简单方法