当前位置: 首页 > 面试题库 >

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

微生烨然
2023-03-14
问题内容

我有以下Java代码;

BigDecimal price; // assigned elsewhere

if (price.compareTo(new BigDecimal("0.00")) == 0) {
    return true;
}

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


问题答案:

使用compareTo(BigDecimal.ZERO)代替equals()

if (price.compareTo(BigDecimal.ZERO) == 0) // see below

BigDecimal常量进行比较BigDecimal.ZERO避免了必须构造new BigDecimal(0)每个执行

仅供参考,BigDecimal也有常量BigDecimal.ONEBigDecimal.TEN为您提供方便。

注意!

您无法使用的原因BigDecimal#equals()是它考虑了
比例

new BigDecimal("0").equals(BigDecimal.ZERO) // true
new BigDecimal("0.00").equals(BigDecimal.ZERO) // false!

因此它不适合用于纯粹的数字比较。但是,BigDecimal.compareTo()比较时不考虑规模:

new BigDecimal("0").compareTo(BigDecimal.ZERO) == 0 // true
new BigDecimal("0.00").compareTo(BigDecimal.ZERO) == 0 // true


 类似资料:
  • 我有以下Java代码; 写if条件的最好方法是什么?

  • 在我的JSP中,我使用JSTL设置某个变量: 然后在jQuery中,在$(文档). Ready(函数(){...})中,我需要检查“myVar”的值。 这不管用。“if”条件的计算结果总是。

  • 我有一个selenium脚本,它在一个财务web应用程序上创建一个财务配置文件。现在我需要检查添加的财务资料是否出现在配置文件中。 例如,我在配置文件中添加了一个退休帐户,并希望查看添加的退休帐户是否出现在配置文件中。我已经检查了UI元素以验证它是否出现在配置文件中。但是我想知道是否有一种方法可以使用javascript变量来检查相同的内容。 我还读过一些扩展,这些扩展可以向您展示称为real t

  • 问题内容: 我想检查变量是否已定义。例如,以下引发未定义的错误 如何捕获此错误? 问题答案: 在JavaScript中,是一个对象。不存在的事物还有另一个价值,。DOM 在几乎所有无法在文档中找到某些结构的情况下都会返回,但是在JavaScript本身中是所使用的值。 第二,不,没有直接对等的内容。如果您确实要专门检查,请执行以下操作: 如果要检查变量是否存在,那只能用/ 来完成,因为它将未声明的

  • 本文向大家介绍如何在JavaScript中检查未定义的变量?,包括了如何在JavaScript中检查未定义的变量?的使用技巧和注意事项,需要的朋友参考一下 要检查变量是否为“未定义”,您需要使用以下命令进行检查。如果结果为“ false”,则表示未定义变量。在这里,变量结果为“ True”- 示例

  • 你能告诉我如何在typescript+angular中检查变量的类型吗?