當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Dart num.compareTo用法及代碼示例

dart:core 庫中num.compareTo 方法的用法介紹如下。

用法:

int compareTo(
   num other   
)
      override

將此與 other 進行比較。

如果 this 小於 other 則返回負數,如果它們相等則返回零,如果 this 大於 other 則返回正數。

此方法表示的排序是num 值的總排序。所有不同的雙精度數都是不相等的,所有不同的整數也是如此,但如果整數具有相同的數值,則它們等於雙精度數。

對於雙打,compareTo 操作不同於 operator==operator<operator> 給出的部分排序。例如,IEEE 雙打強製 0.0 == -0.0 和 NaN 上的所有比較操作返回 false。

此函數對雙打強製執行完整排序。使用 compareTo 時,以下屬性成立:

  • 所有NaN 值都被認為是相等的,並且大於任何數值。
  • -0.0 小於 0.0(和整數 0),但大於任何非零負值。
  • 負無窮小於所有其他值,正無窮大於所有非 NaN 值。
  • 所有其他值都使用它們的數值進行比較。

例子:

print(1.compareTo(2)); // => -1
print(2.compareTo(1)); // => 1
print(1.compareTo(1)); // => 0

// The following comparisons yield different results than the
// corresponding comparison operators.
print((-0.0).compareTo(0.0));  // => -1
print(double.nan.compareTo(double.nan));  // => 0
print(double.infinity.compareTo(double.nan)); // => -1

// -0.0, and NaN comparison operators have rules imposed by the IEEE
// standard.
print(-0.0 == 0.0); // => true
print(double.nan == double.nan);  // => false
print(double.infinity < double.nan);  // => false
print(double.nan < double.infinity);  // => false
print(double.nan == double.infinity);  // => false

相關用法


注:本文由純淨天空篩選整理自dart.dev大神的英文原創作品 compareTo method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。