Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

Comparer.Compare Method

Performs a case-sensitive comparison of two objects of the same type and returns a value indicating whether one is less than, equal to, or greater than the other.

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

abstract Compare : 
        a:Object * 
        b:Object -> int  
override Compare : 
        a:Object * 
        b:Object -> int

Parameters

a
Type: System.Object

The first object to compare.

b
Type: System.Object

The second object to compare.

Return Value

Type: System.Int32
A signed integer that indicates the relative values of a and b, as shown in the following table.

Value

Meaning

Less than zero

a is less than b.

Zero

a equals b.

Greater than zero

a is greater than b.

Implements

IComparer.Compare(Object, Object)

ExceptionCondition
ArgumentException

Neither a nor b implements the IComparable interface.

-or-

a and b are of different types and neither one can handle comparisons with the other.

If a implements IComparable, then a. CompareTo (b) is returned; otherwise, if b implements IComparable, then the negated result of b. CompareTo (a) is returned.

Comparing a null reference (Nothing in Visual Basic) with any type is allowed and does not generate an exception when using IComparable. When sorting, a null reference (Nothing in Visual Basic) is considered to be less than any other object.

String comparisons might have different results depending on the culture. For more information on culture-specific comparisons, see the System.Globalization namespace and Encoding and Localization.

The following code example shows how Compare returns different values depending on the culture associated with the Comparer.

No code example is currently available or this language may not be supported.

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0
Show:
© 2015 Microsoft