Insensitive Comparer. Compare(Object, Object) Method
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Performs a case-insensitive 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.
public: virtual int Compare(System::Object ^ a, System::Object ^ b);
public int Compare (object a, object b);
public int Compare (object? a, object? b);
abstract member Compare : obj * obj -> int override this.Compare : obj * obj -> int
Public Function Compare (a As Object, b As Object) As Integer
The first object to compare.
The second object to compare.
A signed integer that indicates the relative values of
b, as shown in the following table.
|Less than zero|
|Greater than zero|
b implements the IComparable interface.
b are of different types.
b are both strings, this method uses CompareInfo.Compare to compare the strings with the casing ignored; otherwise, it uses the IComparable implementation of either object. That is, if
a implements IComparable, then this method returns the result of
b); otherwise, if
b implements IComparable, then it returns the negated result of
null with any type is allowed and does not generate an exception when using IComparable. When sorting,
null 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 Globalization and Localization.