Nous pouvons comparer String en Java sur la base du contenu et de la référence.
Il est utilisé dans authentification (par la méthode equals()), tri (par la méthode compareTo()), correspondance de référence (par == opérateur) etc.
Il existe trois façons de comparer String en Java :
- En utilisant la méthode equals()
- En utilisant l'opérateur ==
- Par la méthode compareTo()
1) En utilisant la méthode equals()
La méthode de classe String equals() compare le contenu original de la chaîne. Il compare les valeurs de la chaîne pour vérifier l'égalité. La classe String fournit les deux méthodes suivantes :
Comparaison de chaînes de test1.java
class Teststringcomparison1{ public static void main(String args[]){ String s1='Sachin'; String s2='Sachin'; String s3=new String('Sachin'); String s4='Saurav'; System.out.println(s1.equals(s2));//true System.out.println(s1.equals(s3));//true System.out.println(s1.equals(s4));//false } }Testez-le maintenant
Sortir:
true true false
Dans le code ci-dessus, deux chaînes sont comparées en utilisant équivaut à() méthode de Chaîne classe. Et le résultat est imprimé sous forme de valeurs booléennes, vrai ou FAUX .
Comparaison de chaînes de test2.java
class Teststringcomparison2{ public static void main(String args[]){ String s1='Sachin'; String s2='SACHIN'; System.out.println(s1.equals(s2));//false System.out.println(s1.equalsIgnoreCase(s2));//true } }Testez-le maintenant
Sortir:
false true
Dans le programme ci-dessus, les méthodes de Chaîne classe sont utilisées. Le équivaut à() La méthode renvoie true si les objets String correspondent et que les deux chaînes ont la même casse. est égal à IgnoreCase() renvoie vrai quels que soient les cas de chaînes.
Cliquez ici pour en savoir plus sur la méthode equals()2) En utilisant l'opérateur ==
L'opérateur == compare les références et non les valeurs.
Comparaison de chaînes de test3.java
class Teststringcomparison3{ public static void main(String args[]){ String s1='Sachin'; String s2='Sachin'; String s3=new String('Sachin'); System.out.println(s1==s2);//true (because both refer to same instance) System.out.println(s1==s3);//false(because s3 refers to instance created in nonpool) } }Testez-le maintenant
Sortir:
true false
3) Comparaison de chaînes par la méthode compareTo()
Le code ci-dessus démontre l'utilisation de == opérateur utilisé pour comparer deux Chaîne objets.
3) En utilisant la méthode compareTo()
La méthode compareTo() de la classe String compare les valeurs de manière lexicographique 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 s1 et s2 soient deux objets String. Si:
Comparaison de chaînes de test4.java
class Teststringcomparison4{ public static void main(String args[]){ String s1='Sachin'; String s2='Sachin'; String s3='Ratan'; System.out.println(s1.compareTo(s2));//0 System.out.println(s1.compareTo(s3));//1(because s1>s3) System.out.println(s3.compareTo(s1));//-1(because s3 <s1 ) } < pre> <span> Test it Now </span> <p> <strong>Output:</strong> </p> <pre> 0 1 -1 </pre> <a href="/java-string-compareto">Click me for more about compareTo() method</a> <hr></s1>Cliquez-moi pour en savoir plus sur la méthode compareTo()