Maison > Java > javaDidacticiel > Comparaison des tableaux Java : `equals()` et `Arrays.equals()` - Quelle est la différence ?

Comparaison des tableaux Java : `equals()` et `Arrays.equals()` - Quelle est la différence ?

Patricia Arquette
Libérer: 2024-12-28 16:51:12
original
267 Les gens l'ont consulté

Java Array Comparison:  `equals()` vs. `Arrays.equals()` - What's the Difference?

Comparaison de tableaux en Java : égal à Arrays.equals

Lors de la comparaison d'objets tableau en Java, il est important de comprendre les différences subtiles entre égaux et Arrays.equals.

est égal à Opérateur

L'opérateur égal en Java compare si deux références font référence au même objet en mémoire. Lorsqu'il est appliqué aux tableaux, cela signifie qu'il vérifie si les deux références du tableau pointent vers la même instance du tableau.

Object[] array1, array2;
array1.equals(array2);
Copier après la connexion

Dans ce cas, si array1 et array2 font référence au même objet tableau, le résultat sera vrai. Sinon, ce sera faux.

Méthode Arrays.equals

En revanche, la méthode Arrays.equals compare le contenu de deux tableaux. Il vérifie si les tableaux ont le même nombre d'éléments et si les éléments correspondants sont égaux.

Arrays.equals(array1, array2);
Copier après la connexion

Si array1 et array2 ont le même contenu, le résultat sera vrai. Sinon, ce sera faux.

Différences clés

La principale différence entre égal et Arrays.equals est que égal compare les références tandis qu'Arrays.equals compare le contenu.

Exemples

Considérez ce qui suit exemples :

Object[] array1 = new int[] { 1, 2, 3 };
Object[] array2 = new int[] { 1, 2, 3 };
Copier après la connexion

Dans ce cas, array1.equals(array2) sera faux car array1 et array2 sont deux objets tableau différents. Cependant, Arrays.equals(array1, array2) sera vrai car le contenu des tableaux est le même.

Object[] array1 = new int[] { 1, 2, 3 };
Object[] array2 = array1;
Copier après la connexion

Dans ce cas, array1.equals(array2) et Arrays.equals(array1, array2 ) seront tous deux vrais car array1 et array2 font référence au même objet tableau.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal