แก้ไข

แชร์ผ่าน


SortKey.Equals(Object) Method

Definition

Determines whether the specified object is equal to the current SortKey object.

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

Parameters

value
Object

The object to compare with the current SortKey object.

Returns

true if the value parameter is equal to the current SortKey object; otherwise, false.

Exceptions

value is null.

Examples

The following code example shows the results of Equals when compared with different SortKey objects.

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

Remarks

Two SortKey objects are considered equal if their KeyData properties are equal.

This method overrides Object.Equals.

Applies to

See also