StringComparer.Compare Method (Object, Object)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

When overridden in a derived class, compares two objects and returns an indication of their relative sort order.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

public int Compare(
	object x,
	object y


Type: System.Object

An object to compare to y.

Type: System.Object

An object to compare to x.

Return Value

Type: System.Int32

A signed integer that indicates the relative values of x and y, as shown in the following table.



Less than zero

x precedes y in the sort order.


x is null and y is not null.


x is equal to y.


x and y are both null.

Greater than zero

x follows y in the sort order.


y is null and x is not null.

Exception Condition

Neither x nor y is a String object, and neither x nor y implements the IComparable interface.

The StringComparer.Compare(String, String) method is slightly more efficient than the StringComparer.Compare(Object, Object) method because no conversion of the x and y arguments is needed to perform the comparison.

.NET Framework
Available since 2.0
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top