CodeGym /Java-Blog /Random-DE /Java-String-compareTo()-Methode
John Squirrels
Level 41
San Francisco

Java-String-compareTo()-Methode

Veröffentlicht in der Gruppe Random-DE

Was ist die Java-String-compareTo()-Methode?

Die Methode „compareTo()“ der Java-String-Klasse gibt den Wert 0 zurück, wenn beide Strings lexikographisch gleich sind. Wenn die verglichene Zeichenfolge lexikografisch größer ist, wird der positive Wert zurückgegeben, andernfalls wird der negative Wert zurückgegeben. Daher wird die Java-String- CompareTo()- Methode verwendet, um zwei Strings zu vergleichen. Der Unicode- Wert jedes Zeichens in der Zeichenfolge wird von dieser Methode immer zum Vergleich verwendet. Wenn beim Vergleichen der Zeichenfolgen eine davon leer ist, wird immer die Länge der Zeichenfolge zurückgegeben. Wenn eine der Zeichenfolgen leer ist, können zwei Szenarien ablaufen. Wenn die erste Zeichenfolge leer ist, wird ein negativer Wert zurückgegeben, andernfalls wird ein positiver Wert zurückgegeben. Die Java- Methode string.compareTo() berücksichtigt standardmäßig die Groß-/Kleinschreibung, aber wir können die Methode CompareToIgnoreCase() der Java- String- Klasse verwenden , um die Groß-/Kleinschreibung beim Vergleich zu ignorieren. Diese Methode gibt auch eine negative, 0 oder eine positive Ganzzahl zurück, wie oben beschrieben.

Syntax

public int compareTo(string str)
public int compareTo(object obj)

Parameter

Die Java-String- CompareTo()- Methode empfängt einen String oder ein Objekt als Parameter, wie Sie oben in der Syntax sehen können.

Kehrt zurück

  1. Es gibt 0 zurück, wenn beide lexikografisch gleich sind.
  2. Es gibt eine positive Ganzzahl zurück, wenn die verglichene Zeichenfolge oder das verglichene Objekt lexikographisch größer ist.
  3. Es gibt eine negative Ganzzahl zurück, wenn einer der Vergleichswerte lexikographisch kleiner ist.

Ausnahmen

Die Methode „compareTo()“ gibt zwei Ausnahmen zurück.
  • ClassCastException : Wenn das Objekt nicht verglichen werden kann, wird diese Ausnahme zurückgegeben.
  • NullPointerException : Wenn die Zeichenfolge null ist, wird eine NullPointerException ausgelöst.

Beispiele für die Java-String-compareTo()-Methode

class Main {
  public static void main(String[] args) {
    // declaring strings to be used in this example for Java string     compareTo() method
    String str = "Java compareTo() method example";
    String str1 = "Java compareTo() method example";
    String str2 = "this is Java compareTo() method example";
    String str3 = "Java CompareTo() Method Example";
    String str4 = "a Java compareTo() method example";
    String str5 = new String("Java compareTo() method example");

    // comparing the str and str1 strings
    System.out.println(str.compareTo(str1));

    // comparing the str and str2 strings
    System.out.println(str.compareTo(str2));

    // comparing the str and str3 strings
    System.out.println(str.compareTo(str3));

    // comparing the str and str4 strings
    System.out.println(str.compareTo(str4));

    // comparing the str string and str5 string object
    System.out.println(str.compareTo(str5));
  }
}

Ausgabe

0 -42 74 -23 0
Da wir wissen, dass die Zeichenfolgen str und str1 lexikografisch gleich sind, wurde 0 zurückgegeben. Beim Vergleich von str und str2 wurde ein negativer Wert von 42 zurückgegeben, da die verglichene Zeichenfolge str lexikografisch kleiner ist und daher negativ ist, und auf der Grundlage der Unicode-Werte t char und J char hat eine Differenz von 42, daher wird ein Wert von -42 zurückgegeben. Im Übrigen können Sie sich die Ergebnisse ansehen, um diese Methode besser zu verstehen.

Beispiel für eine leere Zeichenfolge

public class Main{
    public static void main(String args[]){
        String str="compareTo()";

        // declaring an empty string
        String str1="";
        String str2="method";

        System.out.println(str.compareTo(str1));
        System.out.println(str1.compareTo(str2));
    }
}

Ausgabe

11 -6

Beispiel für IgnoreCase

public class Main{
    public static void main(String args[]){
        String str="compareTo()";

        // declaring the same string with uppercase letters
        String str1="COMPARETO()";

        System.out.println(str.compareTo(str1));
        System.out.println(str.compareToIgnoreCase(str1));
    }
}

Ausgabe

32 0

Abschluss

Wir hoffen, dass Sie jetzt verstehen, was die Java-String- CompareTo()- Methode ist und wie Sie sie für den String-Vergleich implementieren, zusammen mit ihren verschiedenen Anwendungsfällen, wie dem Vergleich leerer Strings und dem Ignorieren der Groß-/Kleinschreibung. Fühlen Sie sich frei, zu üben und zurückzukommen, wann immer Sie weitere Unterstützung benötigen. Viel Spaß beim Lernen!
Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION