31 juillet 2022 Java

Différence entre equals() et ==

La méthode equals() et l’opérateur ‘==‘ sont toutes deux utilisées pour vérifier l’égalité des objets, mais il existe une différence significative entre equals() et ‘==‘. La méthode equals est présente dans la classe java.lang.Object et est utilisée pour vérifier l’équivalence de l’objet, pour vérifier si le contenu est égal alors que ‘==est utilisé pour vérifier si les instances réelles de l’objet sont identiques ou non.

Opérateur ‘==’

L’opérateur ‘==‘ est utilisé pour vérifier si les deux objets font référence au même endroit dans la mémoire. Voyons cela dans l’exemple ci-dessous

String str1 = new String("autourducode");
String str2 = new String("autourducode");
if(str1 == str2) {
	System.out.println("Les deux objets sont égaux");
}
else {
	System.out.println("Les deux objets ne sont pas égaux");
}

Si vous avez deviné que ‘les deux objets sont égaux‘, alors vous avez tort, car ‘==’ vérifie la mémoire, ici str1 et str2 sont présents dans des adresses mémoire différentes, disons que str1 est à l’adresse 0x34567 et str2 à l’adresse 0x15698, c’est la raison pour laquelle nous obtenons ‘les deux objets ne sont pas égaux‘ bien que les contenus soient identiques.

String str1 = new String("autourducode");
String str2 = str1;
if(str1 == str2) {
	System.out.println("Les deux objets sont égaux");
}
else {
	System.out.println("Les deux objets ne sont pas égaux");
}

alors que le code ci-dessus vous donnera le résultat attendu ‘Les deux objets sont égauxcar les deux objets font référence au même endroit dans la mémoire.

Méthode equals ()

La méthode equals vérifie le contenu des deux objets str, nous obtiendrons ‘Les deux objets sont égaux‘ même si nous comparons le premier exemple avec equals() lui-même.

String str1 = new String("autourducode");
String str2 = new String("autourducode");
if(str1.equals(str2)) {
	System.out.println("Les deux objets sont égaux");
}
else {
	System.out.println("Les deux objets ne sont pas égaux");
}

La classe String surcharge la méthode equals pour comparer si le caractère dans la chaîne est égal. Ainsi, nous obtenons la réponse vraie car les deux contiennent la même chaîne ‘autourducode‘.

J’espère que cet article vous a été utile. Merci de l’avoir lu.

Retrouvez nos vidéos #autourducode sur notre chaîne YouTube : https://bit.ly/3IwIK04

    08.01.22 à 20 h 41 min

    I must thank you for the efforts you have put in writing this blog. Im hoping to check out the same high-grade blog posts from you in the future as well. In fact, your creative writing abilities has encouraged me to get my own, personal site now 😉

      admin
      08.02.22 à 0 h 19 min

      Thank 🤝

    08.10.22 à 18 h 37 min

    If you are going for most excellent contents like
    I do, simply pay a visit this website daily as it presents feature contents, thanks

    Also visit my web site; bestautoservice at

Répondre à bestautoservice at Annuler la réponse

Votre adresse e-mail ne sera pas publiée.