SortKey.Equals(Object) 方法

定义

确定指定的对象是否等于当前 SortKey 对象。

public:
 override bool Equals(System::Object ^ value);
public override bool Equals (object? value);
public override bool Equals (object value);
override this.Equals : obj -> bool
Public Overrides Function Equals (value As Object) As Boolean

参数

value
Object

要与当前 SortKey 对象进行比较的对象。

返回

如果 value 等于当前的 SortKey 对象,则为 true;否则为 false

例外

valuenull

示例

下面的代码示例演示 与不同SortKey对象进行比较时的结果Equals

using namespace System;
using namespace System::Globalization;
int main()
{
   
   // Creates two identical en-US cultures and one de-DE culture.
   CultureInfo^ MyCI = gcnew CultureInfo( "en-US",false );
   CompareInfo^ myComp_enUS1 = MyCI->CompareInfo;
   MyCI = gcnew CultureInfo( "en-US",false );
   CompareInfo^ myComp_enUS2 = MyCI->CompareInfo;
   MyCI = gcnew CultureInfo( "de-DE",false );
   CompareInfo^ myComp_deDE = MyCI->CompareInfo;
   
   // Creates the base SortKey to compare with all the others.
   SortKey^ mySK1 = myComp_enUS1->GetSortKey( "cant", CompareOptions::StringSort );
   
   // Creates a SortKey that is derived exactly the same way as the base SortKey.
   SortKey^ mySK2 = myComp_enUS1->GetSortKey( "cant", CompareOptions::StringSort );
   
   // Creates a SortKey that uses word sort, which is the default sort.
   SortKey^ mySK3 = myComp_enUS1->GetSortKey( "cant" );
   
   // Creates a SortKey for a different String*.
   SortKey^ mySK4 = myComp_enUS1->GetSortKey( "can't", CompareOptions::StringSort );
   
   // Creates a SortKey from a different CompareInfo with the same culture.
   SortKey^ mySK5 = myComp_enUS2->GetSortKey( "cant", CompareOptions::StringSort );
   
   // Creates a SortKey from a different CompareInfo with a different culture.
   SortKey^ mySK6 = myComp_deDE->GetSortKey( "cant", CompareOptions::StringSort );
   
   // Compares the base SortKey with itself.
   Console::WriteLine( "Comparing the base SortKey with itself: {0}", mySK1->Equals( mySK1 ) );
   Console::WriteLine();
   
   // Prints the header for the table.
   Console::WriteLine( "CompareInfo   Culture      OriginalString   CompareOptions   Equals()" );
   
   // Compares the base SortKey with a SortKey that is
   //    created from the same CompareInfo with the same String* and the same CompareOptions.
   Console::WriteLine( "same          same         same             same {0}", mySK1->Equals( mySK2 ) );
   
   // Compares the base SortKey with a SortKey that is 
   //    created from the same CompareInfo with the same String* but with different CompareOptions.
   Console::WriteLine( "same          same         same             different {0}", mySK1->Equals( mySK3 ) );
   
   // Compares the base SortKey with a SortKey that is 
   //    created from the same CompareInfo with the different String* 
   //    but with the same CompareOptions.
   Console::WriteLine( "same          same         different        same {0}", mySK1->Equals( mySK4 ) );
   
   // Compares the base SortKey with a SortKey that is 
   //    created from a different CompareInfo (same culture) 
   //    with the same String* and the same CompareOptions.
   Console::WriteLine( "different     same         same             same {0}", mySK1->Equals( mySK5 ) );
   
   // Compares the base SortKey with a SortKey that is 
   //    created from a different CompareInfo (different culture) 
   //    with the same String* and the same CompareOptions.
   Console::WriteLine( "different     different    same             same {0}", mySK1->Equals( mySK6 ) );
}

/*
This code produces the following output.

Comparing the base SortKey with itself: True

CompareInfo   Culture      OriginalString   CompareOptions   Equals()
same          same         same             same             True
same          same         same             different        False
same          same         different        same             False
different     same         same             same             True
different     different    same             same             False

*/
using System;
using System.Globalization;

public class SamplesSortKey  {

   public static void Main()  {

      // Creates two identical en-US cultures and one de-DE culture.
      CompareInfo myComp_enUS1 = new CultureInfo("en-US",false).CompareInfo;
      CompareInfo myComp_enUS2 = new CultureInfo("en-US",false).CompareInfo;
      CompareInfo myComp_deDE = new CultureInfo("de-DE",false).CompareInfo;

      // Creates the base SortKey to compare with all the others.
      SortKey mySK1 = myComp_enUS1.GetSortKey( "cant", CompareOptions.StringSort );
      // Creates a SortKey that is derived exactly the same way as the base SortKey.
      SortKey mySK2 = myComp_enUS1.GetSortKey( "cant", CompareOptions.StringSort );
      // Creates a SortKey that uses word sort, which is the default sort.
      SortKey mySK3 = myComp_enUS1.GetSortKey( "cant" );
      // Creates a SortKey for a different string.
      SortKey mySK4 = myComp_enUS1.GetSortKey( "can't", CompareOptions.StringSort );
      // Creates a SortKey from a different CompareInfo with the same culture.
      SortKey mySK5 = myComp_enUS2.GetSortKey( "cant", CompareOptions.StringSort );
      // Creates a SortKey from a different CompareInfo with a different culture.
      SortKey mySK6 = myComp_deDE.GetSortKey( "cant", CompareOptions.StringSort );

      // Compares the base SortKey with itself.
      Console.WriteLine( "Comparing the base SortKey with itself: {0}", mySK1.Equals( mySK1 ) );
      Console.WriteLine();

      // Prints the header for the table.
      Console.WriteLine( "CompareInfo   Culture      OriginalString   CompareOptions   Equals()" );

      // Compares the base SortKey with a SortKey that is
      //    created from the same CompareInfo with the same string and the same CompareOptions.
      Console.WriteLine( "same          same         same             same             {0}", mySK1.Equals( mySK2 ) );

      // Compares the base SortKey with a SortKey that is
      //    created from the same CompareInfo with the same string but with different CompareOptions.
      Console.WriteLine( "same          same         same             different        {0}", mySK1.Equals( mySK3 ) );

      // Compares the base SortKey with a SortKey that is
      //    created from the same CompareInfo with the different string
      //    but with the same CompareOptions.
      Console.WriteLine( "same          same         different        same             {0}", mySK1.Equals( mySK4 ) );

      // Compares the base SortKey with a SortKey that is
      //    created from a different CompareInfo (same culture)
      //    with the same string and the same CompareOptions.
      Console.WriteLine( "different     same         same             same             {0}", mySK1.Equals( mySK5 ) );

      // Compares the base SortKey with a SortKey that is
      //    created from a different CompareInfo (different culture)
      //    with the same string and the same CompareOptions.
      Console.WriteLine( "different     different    same             same             {0}", mySK1.Equals( mySK6 ) );
   }
}

/*
This code produces the following output.

Comparing the base SortKey with itself: True

CompareInfo   Culture      OriginalString   CompareOptions   Equals()
same          same         same             same             True
same          same         same             different        False
same          same         different        same             False
different     same         same             same             True
different     different    same             same             False

*/
Imports System.Globalization

Public Class SamplesSortKey

   Public Shared Sub Main()

      ' Creates two identical en-US cultures and one de-DE culture.
      Dim myComp_enUS1 As CompareInfo = New CultureInfo("en-US", False).CompareInfo
      Dim myComp_enUS2 As CompareInfo = New CultureInfo("en-US", False).CompareInfo
      Dim myComp_deDE As CompareInfo = New CultureInfo("de-DE", False).CompareInfo

      ' Creates the base SortKey to compare with all the others.
      Dim mySK1 As SortKey = myComp_enUS1.GetSortKey("cant", CompareOptions.StringSort)
      ' Creates a SortKey that is derived exactly the same way as the base SortKey.
      Dim mySK2 As SortKey = myComp_enUS1.GetSortKey("cant", CompareOptions.StringSort)
      ' Creates a SortKey that uses word sort, which is the default sort.
      Dim mySK3 As SortKey = myComp_enUS1.GetSortKey("cant")
      ' Creates a SortKey for a different string.
      Dim mySK4 As SortKey = myComp_enUS1.GetSortKey("can't", CompareOptions.StringSort)
      ' Creates a SortKey from a different CompareInfo with the same culture.
      Dim mySK5 As SortKey = myComp_enUS2.GetSortKey("cant", CompareOptions.StringSort)
      ' Creates a SortKey from a different CompareInfo with a different culture.
      Dim mySK6 As SortKey = myComp_deDE.GetSortKey("cant", CompareOptions.StringSort)

      ' Compares the base SortKey with itself.
      Console.WriteLine("Comparing the base SortKey with itself: {0}", mySK1.Equals(mySK1))
      Console.WriteLine()

      ' Prints the header for the table.
      Console.WriteLine("CompareInfo   Culture      OriginalString   CompareOptions   Equals()")

      ' Compares the base SortKey with a SortKey that is
      '    created from the same CompareInfo with the same string and the same CompareOptions.
      Console.WriteLine("same          same         same             same             {0}", mySK1.Equals(mySK2))

      ' Compares the base SortKey with a SortKey that is 
      '    created from the same CompareInfo with the same string but with different CompareOptions.
      Console.WriteLine("same          same         same             different        {0}", mySK1.Equals(mySK3))

      ' Compares the base SortKey with a SortKey that is 
      '    created from the same CompareInfo with the different string 
      '    but with the same CompareOptions.
      Console.WriteLine("same          same         different        same             {0}", mySK1.Equals(mySK4))

      ' Compares the base SortKey with a SortKey that is 
      '    created from a different CompareInfo (same culture) 
      '    with the same string and the same CompareOptions.
      Console.WriteLine("different     same         same             same             {0}", mySK1.Equals(mySK5))

      ' Compares the base SortKey with a SortKey that is 
      '    created from a different CompareInfo (different culture) 
      '    with the same string and the same CompareOptions.
      Console.WriteLine("different     different    same             same             {0}", mySK1.Equals(mySK6))

   End Sub

End Class


'This code produces the following output.
'
'Comparing the base SortKey with itself: True
'
'CompareInfo   Culture      OriginalString   CompareOptions   Equals()
'same          same         same             same             True
'same          same         same             different        False
'same          same         different        same             False
'different     same         same             same             True
'different     different    same             same             False

注解

如果两个 SortKey 对象的属性相等,则视为 KeyData 相等。

此方法重写 Object.Equals

适用于

另请参阅