Comparer deux String en Java
Dans ce tutoriel nous allons découvrir trois façons pour comparer deux String en Java.
- Par la méthode equals()
- Par la méthode compareTo()
- Par l’opérateur ==
Exemple: La méthode equals()
La méthode equals() compare le contenu d’une chaîne. Il compare les valeurs pour l’égalité.
public class Main { public static void main(String args[]){ String str1 = "Java"; String str2 = "Java"; System.out.println(str1.equals(str2)); } }
Sortie:
true
Exemple: La méthode compareTo()
La méthode compareTo() compare les valeurs et renvoie une valeur entière qui décrit si la première chaîne est inférieure, égale ou supérieure à la deuxième chaîne.
Supposons que str1 et str2 soient deux variables String. Si:
- str1 == str2 : le résultat sera 0
- str1 > str2 : le résultat sera une valeur positive
- str1 < str2 : le résultat sera une valeur négative
public class Main { public static void main(String args[]){ String str1 = "Java"; String str2 = "Java"; System.out.println(str1.compareTo(str2)); } }
Sortie:
0
Exemple: L’opérateur ==
Attention : L’opérateur == compare les références et non les valeurs.
public class Main { public static void main(String args[]){ String str1 = "Java"; String str2 = "Java"; System.out.println(str1 == str2); } }
Sortie:
true
Cela ne fonctionne pas avec ==
Problème de pointeur il parait :/