相关疑难解决方法(0)

如何在java中检查BigDecimal变量== 0?

我在Java中有以下代码;

BigDecimal price; // assigned elsewhere

if (price.compareTo(new BigDecimal("0.00")) == 0) {
    return true;
}
Run Code Online (Sandbox Code Playgroud)

写if条件的最佳方法是什么?

java bigdecimal

189
推荐指数
7
解决办法
21万
查看次数

为什么BigDecimal自然排序与equals不一致?

来自JavadocBigDecimal:

注:如果应谨慎BigDecimal对象作为一个键SortedMap或元素的SortedSetBigDecimal自然顺序与等号一致.

例如,如果你创建HashSet并添加new BigDecimal("1.0")new BigDecimal("1.00")它的集将包含两个元素(因为该值有不同的尺度,所以是不相等的根据equalshashCode),但如果你有做同样的事情TreeSet,该Set只包含一个元素,因为使用时值比较相等compareTo.

这种不一致背后有什么具体原因吗?

java bigdecimal

25
推荐指数
1
解决办法
1766
查看次数

标签 统计

bigdecimal ×2

java ×2