String.IComparable.CompareTo(Object) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
Parameter
Gibt zurück
Eine 32-Bit-Ganzzahl mit Vorzeichen, die angibt, ob diese Instanz in der Sortierreihenfolge an einer früheren, späteren oder derselben Position wie der value
-Parameter aufgeführt wird.
Wert | Bedingung |
---|---|
Kleiner als 0 (null) | Diese Instanz geht value voran. |
Zero | Diese Instanz hat in der Sortierreihenfolge dieselbe Position wie value . |
Größer als 0 (null) | Diese Instanz folgt value , oder value ist null . |
Implementiert
Ausnahmen
value
ist keine String.
Beispiele
Im folgenden Beispiel wird die CompareTo -Methode mit einem Object verwendet. Da versucht wird, eine -Instanz mit String einem -Objekt zu TestClass
vergleichen, löst die -Methode eine ArgumentException aus.
using namespace System;
public ref class TestClass{};
int main()
{
TestClass^ test = gcnew TestClass;
array<Object^>^ objectsToCompare = { test, test->ToString(), 123,
(123).ToString(), "some text",
"Some Text" };
String^ s = "some text";
for each (Object^ objectToCompare in objectsToCompare) {
try {
Int32 i = s->CompareTo(objectToCompare);
Console::WriteLine("Comparing '{0}' with '{1}': {2}",
s, objectToCompare, i);
}
catch (ArgumentException^ e) {
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
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
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
Hinweise
value
muss ein -Objekt String sein.
Achtung
Die CompareTo -Methode wurde hauptsächlich für die Verwendung bei Sortierungs- oder Alphabetisierungsvorgängen entwickelt. Sie sollte nicht verwendet werden, wenn der Hauptzweck des Methodenaufrufs ist, zu bestimmen, ob zwei Zeichenfolgen gleichwertig sind. Um zu bestimmen, ob zwei Zeichenfolgen gleichwertig sind, rufen Sie die Equals -Methode auf.
Diese Methode führt einen Wortvergleich (groß-/kleinschreibung und kulturabhängig) unter Verwendung der aktuellen Kultur durch. Weitere Informationen zu Wort-, Zeichenfolgen- und Ordnungssortierreihenfolgen finden Sie unter System.Globalization.CompareOptions .
Weitere Informationen zum Verhalten dieser Methode finden Sie im Abschnitt Hinweise der String.Compare(String, String) -Methode.