Export (0) Print
Expand All

SortKey.Equals Method

Determines whether the specified object is the same instance as the current SortKey.

[Visual Basic]
Overrides Public Function Equals( _
   ByVal value As Object _
) As Boolean
[C#]
public override bool Equals(
 object value
);
[C++]
public: bool Equals(
 Object* value
);
[JScript]
public override function Equals(
   value : Object
) : Boolean;

Parameters

value
The object to compare with the current SortKey.

Return Value

true if the specified object is the same instance as the current SortKey; otherwise, false.

Remarks

This method overrides Object.Equals.

Two SortKey instances are considered equal if both instances were created from CompareInfo instances that are considered equal, using the same string and the same CompareOptions.

Example

[Visual Basic, C#, C++] The following code example shows the results of Equals when compared with different SortKey objects.

[Visual Basic] 
Imports System
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 'Main 

End Class 'SamplesSortKey


'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


[C#] 
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

*/

[C++] 
#using <mscorlib.dll>
using namespace System;
using namespace System::Globalization;

int main()
{
   // Creates two identical en-US cultures and one de-DE culture.

   CultureInfo * MyCI = new CultureInfo(S"en-US", false);
   CompareInfo* myComp_enUS1 = MyCI -> CompareInfo;

   MyCI = new CultureInfo(S"en-US", false);
   CompareInfo* myComp_enUS2 = MyCI -> CompareInfo;

   MyCI = new CultureInfo(S"de-DE", false);
   CompareInfo* myComp_deDE = MyCI -> CompareInfo;


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

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

   // Prints the header for the table.
   Console::WriteLine(S"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(S"same          same         same             same {0}", 
       __box(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(S"same          same         same             different {0}", 
       __box(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(S"same          same         different        same {0}", 
       __box(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(S"different     same         same             same {0}", 
       __box(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(S"different     different    same             same {0}", 
       __box(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

*/

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also

SortKey Class | SortKey Members | System.Globalization Namespace | Object.Equals

Show:
© 2014 Microsoft