IComparable.CompareTo(Object) 方法

定義

比較這個物件與指定之對象的順序。

[Android.Runtime.Register("compareTo", "(Ljava/lang/Object;)I", "GetCompareTo_Ljava_lang_Object_Handler:Java.Lang.IComparableInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public int CompareTo (Java.Lang.Object o);
[<Android.Runtime.Register("compareTo", "(Ljava/lang/Object;)I", "GetCompareTo_Ljava_lang_Object_Handler:Java.Lang.IComparableInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member CompareTo : Java.Lang.Object -> int

參數

o
Object

要比較的物件。

傳回

負整數、零或正整數,因為這個物件小於、等於或大於指定的物件。

屬性

備註

比較這個物件與指定之對象的順序。 傳回負整數、零或正整數,因為這個物件小於、等於或大於指定的物件。

實作者必須確定 sgn(x.compareTo(y)) == -sgn(y.compareTo(x)) 所有 xy。 (這表示 x.compareTo(y) 必須擲回例外狀況差異 y.compareTo(x) 擲回例外狀況。

實作者也必須確保關聯性是可轉移的: (x.compareTo(y) > 0 && y.compareTo(z) > 0) 表示 x.compareTo(z) > 0

最後,實作者必須確定 x.compareTo(y)==0 ,這表示 sgn(x.compareTo(z)) == sgn(y.compareTo(z))所有 z

強烈建議您這麼做,但 並非 嚴格要求 (x.compareTo(y)==0) == (x.equals(y))。 一般而言,任何實 Comparable 作 介面且違反此條件的類別都應該清楚指出這個事實。 建議的語言是「注意:這個類別的自然順序與相等不一致」。

在上述描述中,表示法sgn(表達式)會指定數學符號函式,其定義為傳回的-1其中一個 、0,或1根據表達式的值分別為負數、零或正數。

java.lang.Comparable.compareTo(T)Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於