Menu
Coddy logo textTech

Comparaison de chaînes

Fait partie de la section Fondamentaux du Journey Java de Coddy — leçon 21 sur 73.

En Java, comparer des chaînes de caractères est différent de comparer des nombres. Bien que vous puissiez utiliser <, >, ==, etc., pour les nombres, les chaînes de caractères nécessitent des méthodes différentes car elles sont des objets, pas des primitifs.

La manière la plus courante et correcte de vérifier si deux chaînes ont le même contenu est d'utiliser la méthode equals() :

String str1 = "hello";
String str2 = "hello";
String str3 = "Hello";

boolean result1 = str1.equals(str2);  // true
boolean result2 = str1.equals(str3);  // false (case-sensitive)

Utilisation de equalsIgnoreCase() Si vous voulez comparer des chaînes sans tenir compte de la casse :

String str1 = "Hello";
String str2 = "hello";

boolean result = str1.equalsIgnoreCase(str2);  // true

De nombreux débutants essaient d'utiliser == pour comparer des chaînes, mais cela est généralement faux :

String str1 = "hello";
String str2 = "hello";

boolean result = (str1 == str2); 

Ne comparez pas les chaînes avec le signe == !

Aide-mémoire

En Java, les chaînes de caractères sont des objets et nécessitent des méthodes spéciales pour la comparaison :

Utilisez equals() pour comparer le contenu des chaînes (sensible à la casse) :

String str1 = "hello";
String str2 = "hello";
String str3 = "Hello";

boolean result1 = str1.equals(str2);  // true
boolean result2 = str1.equals(str3);  // false

Utilisez equalsIgnoreCase() pour comparer les chaînes en ignorant la casse :

String str1 = "Hello";
String str2 = "hello";

boolean result = str1.equalsIgnoreCase(str2);  // true

Important : N'utilisez pas == pour comparer les chaînes - cela compare les références d'objets, pas le contenu.

Essayez vous-même

Cette leçon ne comprend pas de défi de code.

quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux