operator == 抽象方法

bool operator ==(
  1. Object other
)
override

测试此值是否在数值上等于 other

如果两个操作数都是 double,它们相等如果它们具有相同的表示,除了

  • 零和负零(0.0 和 -0.0)被认为是相等的。它们都具有数值零。
  • NaN 不等于任何东西,包括 NaN。如果任一操作数是 NaN,结果总是 false。

如果一个操作数是 double 而另一个是 int,如果 double 有整数值(有限且无分数部分)并且数值相同,它们相等。

如果两个操作数都是整数,它们相等如果它们具有相同的值。

如果 other 不是 num,则返回 false。

注意,NaN 的行为是非自反的。这意味着 double 值的相等性不是一个合适的相等关系,如其他情况下所需的 operator==。在例如 HashSet 中使用 NaN 将会失败。该行为是标准 IEEE-754 double 相等。

如果您可以避免 NaN 值,其余的 doubles 具有合适的相等关系,可以安全使用。

使用 compareTo 进行可以将零和负零区分开来的比较,并将 NaN 值视为相等的比较。

实现

bool operator ==(Object other);