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

实现

注解

此成员是显式接口成员的实现。 仅当实例强制转换为IComparable接口时Guid,才能使用它。

该方法 CompareTo 比较 GUID,就像它们是提供给 Guid(Int32, Int16, Int16, Byte[]) 构造函数的值一样,如下所示:

  • 它比较值 UInt32 ,如果结果不相等,则返回结果。 如果它们相等,它将执行下一个比较。
  • 它比较第一个 UInt16 值,如果结果不相等,则返回结果。 如果它们相等,它将执行下一个比较。
  • 它会比较第二 UInt16 个值,如果结果不相等,则返回结果。 如果它们相等,它将执行下一个比较。
  • 如果对接下来的 8 Byte 个值执行字节字节比较。 遇到第一个不相等对时,它将返回结果。 否则,它将返回 0 以指示两 Guid 个值相等。

请注意,最后八个字节以反向顺序显示在从低字节到高字节的 Guid 字符串表示形式中。 例如,在值“01e75c83-c6f5-4192-b57e-7427cec5560d”的 Guid 字符串表示形式中,最后八个字节为“b57e-7427cec5560d”。 换句话说,从左到右从左到右,最后八个字节以字节为单位进行比较,从0xb5开始。

如果两个 GUID 的组件值相等,该方法将比较下一个组件。 当它找到其值不相等的组件时,它将返回结果。

此方法实现 System.IComparable<T> 接口并执行比方法稍好 Guid.CompareTo 一些,因为它不必将 value 参数转换为 Guid 值。

适用于