Guid.IComparable.CompareTo(Object) メソッド

定義

指定した Guid オブジェクトとこのインスタンスを比較し、これらの相対値を示す値を返します。

 virtual int System.IComparable.CompareTo(System::Object ^ value) = IComparable::CompareTo;
int IComparable.CompareTo (object value);
abstract member System.IComparable.CompareTo : obj -> int
override this.System.IComparable.CompareTo : obj -> int
Function CompareTo (value As Object) As Integer Implements IComparable.CompareTo

パラメーター

value
Object

このインスタンスと比較するオブジェクト。

戻り値

Int32

このインスタンスと value の相対値を示す符号付き数値。

戻り値説明
負の整数このインスタンスは value より小さい値です。
ゼロこのインスタンスは value と同じ値です。
正の整数このインスタンスは value より大きい値です。

実装

注釈

このメンバーは、明示的なインターフェイス メンバーの実装です。 インスタンスがインターフェイスに Guid キャスト IComparable されている場合にのみ使用できます。

このメソッドは CompareTo 、GUID をコンストラクターに提供された値と比較します Guid(Int32, Int16, Int16, Byte[]) 。次のようになります。

  • 値を UInt32 比較し、等しくない場合は結果を返します。 等しい場合は、次の比較を実行します。
  • 最初 UInt16 の値を比較し、等しくない場合は結果を返します。 等しい場合は、次の比較を実行します。
  • 2 番目 UInt16 の値を比較し、等しくない場合は結果を返します。 等しい場合は、次の比較を実行します。
  • If は、次の 8 Byte つの値のバイト単位の比較を実行します。 最初の等しくないペアが検出されると、結果が返されます。 それ以外の場合は、0 を返して、2 つの Guid 値が等しいことを示します。

最後の 8 バイトは、下位バイトから高バイトまでの逆順の文字列形式 Guid で表示されることに注意してください。 たとえば、値 "01e75c83-c6f5-4192-b57e-7427cec5560d" の文字列表現 Guid では、最後の 8 バイトは "b57e-7427cec5560d" です。 つまり、最後の 8 バイトは、0xb5で始まる左から右にバイト単位で比較されます。

2 つの GUID に 1 つのコンポーネントの値が等しい場合、メソッドは次のコンポーネントを比較します。 値が等しくないコンポーネントが見つかると、結果が返されます。

このメソッドはインターフェイスをSystem.IComparable<T>実装し、パラメーターを値に変換する必要がないため、メソッドよりもGuid.CompareTo若干優れたパフォーマンスをvalueGuid発揮します。

適用対象