Maison >Java >javaDidacticiel >Comparaison des tableaux Java : `equals()` et `Arrays.equals()` - Quelle est la différence ?
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);
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);
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 };
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;
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!