Compares this instance to a specified object and indicates whether this instance precedes, follows, or appears in the same position in the sort order as the specified Object.
Assembly: mscorlib (in mscorlib.dll)
Public Function CompareTo ( _ value As Object _ ) As Integer
public int CompareTo( Object value )
public: virtual int CompareTo( Object^ value ) sealed
abstract CompareTo : value:Object -> int override CompareTo : value:Object -> int
Parameters
- value
- Type: System.Object
An object to compare this instance to, or null.
Return Value
Type: System.Int32A signed number indicating the position of this instance in the sort order in relation to the value parameter.
Return Value | Description |
|---|---|
Less than zero | This instance precedes value. |
Zero | This instance has the same position in the sort order as value. |
Greater than zero | This instance follows value. -or- value is null. |
Implements
IComparable.CompareTo(Object)| Exception | Condition |
|---|---|
| ArgumentException |
value is not a Char object. |
The CompareTo method implements the IComparable interface.
The value parameter must be null or an instance of Char; otherwise, an exception is thrown.
The comparison performed by this method is based on the encoded values of this instance and value, not necessarily their lexicographical characteristics. Any instance of Char, regardless of its value, is considered greater than null.
The following code example demonstrates CompareTo.
Imports System Module CompareToSample Sub Main() Dim chA As Char chA = "A"c Dim chB As Char chB = "B"c Console.WriteLine(chA.CompareTo("A"c)) ' Output: "0" (meaning they're equal) Console.WriteLine("b"c.CompareTo(chB)) ' Output: "32" (meaning 'b' is 32 greater than 'B') Console.WriteLine(chA.CompareTo(chB)) ' Output: "-1" (meaning 'A' is less than 'B' by 1) End Sub End Module
using System; public class CompareToSample { public static void Main() { char chA = 'A'; char chB = 'B'; Console.WriteLine(chA.CompareTo('A')); // Output: "0" (meaning they're equal) Console.WriteLine('b'.CompareTo(chB)); // Output: "32" (meaning 'b' is greater than 'B' by 32) Console.WriteLine(chA.CompareTo(chB)); // Output: "-1" (meaning 'A' is less than 'B' by 1) } }
using namespace System; int main() { char chA = 'A'; char chB = 'B'; Console::WriteLine( chA.CompareTo( 'A' ) ); // Output: "0" (meaning they're equal) Console::WriteLine( 'b'.CompareTo( chB ) ); // Output: "32" (meaning 'b' is greater than 'B' by 32) Console::WriteLine( chA.CompareTo( chB ) ); // Output: "-1" (meaning 'A' is less than 'B' by 1) }
.NET Framework
Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0.NET Framework Client Profile
Supported in: 4, 3.5 SP1Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.