IComparable.CompareTo(Object) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
このオブジェクトを指定したオブジェクトと順序を比較します。
[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
比較するオブジェクト。
戻り値
このオブジェクトが指定したオブジェクトより小さい、等しい、または大きい場合は、負の整数、0、または正の整数。
- 属性
注釈
このオブジェクトを指定したオブジェクトと順序を比較します。 このオブジェクトが指定したオブジェクトより小さい、等しい、または大きい場合は、負の整数、0、または正の整数を返します。
実装者は、すべてのx
y
ことを保証sgn(x.compareTo(y)) == -sgn(y.compareTo(x))
する必要があります。 (これは、例外がスローされた場合y.compareTo(x)
に例外をスローする必要があることをx.compareTo(y)
意味します)。
実装者は、関係が推移的であることを確認する必要もあります。 (x.compareTo(y) > 0 && y.compareTo(z) > 0)
x.compareTo(z) > 0
最後に、実装者は、それがすべてのz
ことを意味sgn(x.compareTo(z)) == sgn(y.compareTo(z))
することを確認x.compareTo(y)==0
する必要があります。
それは強くお勧めしますが、厳密には(x.compareTo(y)==0) == (x.equals(y))
必須ではありません. 一般に、インターフェイスを実装し、この条件に Comparable
違反するクラスは、この事実を明確に示す必要があります。 推奨される言語は、"注: このクラスには、等号と矛盾する自然な順序付けがあります" です。
前述の説明では、表記sgn(
式)
は、式の値が負、ゼロ、または正のいずれであるかを返すように1
-1
0
定義される数学のサイン関数を指定します。
の Java ドキュメントjava.lang.Comparable.compareTo(T)
このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。