CodeGym /Blog Java /Random-FR /Méthode Java String compareTo()
John Squirrels
Niveau 41
San Francisco

Méthode Java String compareTo()

Publié dans le groupe Random-FR

Qu'est-ce que la méthode Java String compareTo() ?

La méthode compareTo() de la classe de chaînes Java renvoie la valeur 0 si les deux chaînes sont lexicographiquement égales. Si la chaîne comparée est plus grande lexicographiquement, la valeur positive est renvoyée, sinon la valeur négative est renvoyée. Ainsi, la méthode Java string compareTo() est utilisée pour comparer deux chaînes. La valeur Unicode de chaque caractère de la chaîne est toujours utilisée par cette méthode pour les comparer. Lors de la comparaison des chaînes, si l’une d’entre elles est vide, la longueur de la chaîne est toujours renvoyée. Si l’une des chaînes est vide, deux scénarios peuvent se produire. Si la première chaîne est vide alors elle renvoie une valeur négative, sinon elle renvoie une valeur positive. La méthode Java string.compareTo() par défaut est sensible à la casse, mais nous pouvons utiliser la méthode compareToIgnoreCase() de la classe Java String pour ignorer la sensibilité à la casse lors de la comparaison. Cette méthode renvoie également un entier négatif, 0 ou positif comme décrit ci-dessus.

Syntaxe

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

Paramètres

La méthode Java string compareTo() reçoit une chaîne ou un objet en paramètre comme vous pouvez le voir ci-dessus dans la syntaxe.

Retour

  1. Il renvoie 0 si les deux sont lexicographiquement égaux.
  2. Il renvoie un entier positif si la chaîne ou l'objet comparé est plus grand lexicographiquement.
  3. Il renvoie un entier négatif si l'un des éléments comparés est plus petit lexicographiquement.

Des exceptions

La méthode compareTo() renvoie 2 exceptions.
  • ClassCastException , si l'objet ne peut pas être comparé, il renvoie cette exception.
  • NullPointerException , si la chaîne est nulle, alors NullPointerException est levée.

Exemples de méthodes Java String compareTo()

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));
  }
}

Sortir

0 -42 74 -23 0
Comme nous le savons, les chaînes str et str1 sont égales lexicographiquement, elles ont donc renvoyé 0. Lors de la comparaison de str et str2 , elles ont renvoyé une valeur négative de 42 car la chaîne comparée str est plus petite lexicographiquement, donc c'est un négatif et sur la base de la valeur unicode t char et J char a une différence de 42, donc une valeur -42 est renvoyée. Pour le reste vous pouvez voir les résultats pour mieux comprendre cette méthode.

Exemple de chaîne vide

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));
    }
}

Sortir

11-6

Exemple d'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));
    }
}

Sortir

32 0

Conclusion

Nous espérons que vous comprenez maintenant ce qu'est la méthode Java string compareTo() et comment l'implémenter pour la comparaison de chaînes, ainsi que ses différents cas d'utilisation, tels que la comparaison de chaînes vides et l'ignorance de la sensibilité à la casse. N'hésitez pas à vous entraîner et à revenir chaque fois que vous avez besoin d'aide supplémentaire. Bon apprentissage!
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION