String.IComparable.CompareTo(Object) Methode

Definitie

Vergelijkt dit exemplaar met een opgegeven Object en geeft aan of deze instantie voorafgaat, volgt of op dezelfde positie wordt weergegeven in de sorteervolgorde als de opgegeven Object.

 virtual int System.IComparable.CompareTo(System::Object ^ value) = IComparable::CompareTo;
int IComparable.CompareTo(object value);
abstract member System.IComparable.CompareTo : obj -> int
override this.System.IComparable.CompareTo : obj -> int
Function CompareTo (value As Object) As Integer Implements IComparable.CompareTo

Parameters

value
Object

Een object dat resulteert in een String.

Retouren

Een 32-bits ondertekend geheel getal dat aangeeft of deze instantie voorafgaat aan, volgt of op dezelfde positie wordt weergegeven in de sorteervolgorde als de value parameter.

WaardeCondition
Kleiner dan nulDit exemplaar wordt voorafgegaan door value.
NulDit exemplaar heeft dezelfde positie in de sorteervolgorde als value.
Groter dan nulDit exemplaar volgt valueof value is null.

Implementeringen

Uitzonderingen

value is geen String.

Voorbeelden

In het volgende voorbeeld wordt de CompareTo methode gebruikt met een Object. Omdat er wordt geprobeerd een String exemplaar te vergelijken met een TestClass object, genereert de methode een ArgumentException.

using System;

public class TestClass
{}

public class Example
{
   public static void Main()
   {
      var test = new TestClass();
      Object[] objectsToCompare = { test, test.ToString(), 123,
                                    123.ToString(), "some text",
                                    "Some Text" };
      string s = "some text";
      foreach (var objectToCompare in objectsToCompare) {
         try {
            int i = s.CompareTo(objectToCompare);
            Console.WriteLine("Comparing '{0}' with '{1}': {2}",
                              s, objectToCompare, i);
         }
         catch (ArgumentException) {
            Console.WriteLine("Bad argument: {0} (type {1})",
                              objectToCompare,
                              objectToCompare.GetType().Name);
         }
      }
   }
}
// The example displays the following output:
//    Bad argument: TestClass (type TestClass)
//    Comparing 'some text' with 'TestClass': -1
//    Bad argument: 123 (type Int32)
//    Comparing 'some text' with '123': 1
//    Comparing 'some text' with 'some text': 0
//    Comparing 'some text' with 'Some Text': -1
open System

type TestClass() = class end

let test = TestClass()
let objectsToCompare: obj list =
    [ test; string test; 123
      string 123; "some text"
      "Some Text" ]
let s = "some text"
for objectToCompare in objectsToCompare do
    try
        let i = s.CompareTo objectToCompare
        printfn $"Comparing '{s}' with '{objectToCompare}': {i}"
    with :? ArgumentException ->
        printfn $"Bad argument: {objectToCompare} (type {objectToCompare.GetType().Name})"
// The example displays the following output:
//    Bad argument: TestClass (type TestClass)
//    Comparing 'some text' with 'TestClass': -1
//    Bad argument: 123 (type Int32)
//    Comparing 'some text' with '123': 1
//    Comparing 'some text' with 'some text': 0
//    Comparing 'some text' with 'Some Text': -1
Public Class TestClass
End Class 


Public Class Example
   Public Shared Sub Main()
      Dim test As New TestClass()
      Dim objectsToCompare() As Object = { test, test.ToString(), 123,
                                           123.ToString(), "some text",
                                           "Some Text" }
      Dim s As String = "some text"
      For Each objectToCompare In objectsToCompare
         Try
            Dim i As Integer = s.CompareTo(objectToCompare)
            Console.WriteLine("Comparing '{0}' with '{1}': {2}",
                              s, objectToCompare, i)
         Catch e As ArgumentException
            Console.WriteLine("Bad argument: {0} (type {1})",
                              objectToCompare,
                              objectToCompare.GetType().Name)
         End Try
      Next
   End Sub 
End Class 
' The example displays the following output:
'       Bad argument: TestClass (type TestClass)
'       Comparing 'some text' with 'TestClass': -1
'       Bad argument: 123 (type Int32)
'       Comparing 'some text' with '123': 1
'       Comparing 'some text' with 'some text': 0
'       Comparing 'some text' with 'Some Text': -1

Opmerkingen

value moet een String object zijn.

Caution

De CompareTo methode is voornamelijk ontworpen voor gebruik bij het sorteren of alfabetiseren van bewerkingen. Het mag niet worden gebruikt wanneer het primaire doel van de methode-aanroep is om te bepalen of twee tekenreeksen gelijkwaardig zijn. Als u wilt bepalen of twee tekenreeksen gelijkwaardig zijn, roept u de Equals methode aan.

Deze methode voert een woordvergelijking (hoofdlettergevoelig en cultuurgevoelig) uit met behulp van de huidige cultuur. Zie voor meer informatie over woorden, tekenreeksen en rangschikken System.Globalization.CompareOptions.

Zie de sectie Opmerkingen van de String.Compare(String, String) methode voor meer informatie over het gedrag van deze methode.

Van toepassing op