Comparaison de tableaux d'entiers en Java : au-delà de l'égalité
Question :
Comment puis-je efficacement comparer deux tableaux d'entiers en Java, en vous assurant qu'ils ont les mêmes éléments, ordre et longueur ?
Exemple de code :
<code class="java">public static void compareArrays(int[] array1, int[] array2) { if (array1 == null || array2 == null) { throw new IllegalArgumentException("Arrays cannot be null."); } if (array1.length != array2.length) { System.out.println("Arrays have different lengths."); } else { for (int i = 0; i < array1.length; i++) { if (array1[i] != array2[i]) { System.out.println("Arrays have different elements at index " + i); return; } } System.out.println("Arrays are equal."); } }</code>
Explication :
La méthode compareArrays vérifie d'abord les tableaux nuls, puis compare leurs longueurs. Si les longueurs sont égales, il procède à une comparaison élément par élément. Si des éléments diffèrent, la méthode imprime l'index de l'élément différent et quitte la boucle. Sinon, il indique que les tableaux sont égaux.
Remarque :
Cette approche compare les tableaux pour l'égalité. Si le but est simplement de déterminer si les tableaux contiennent le même ensemble d’éléments, quel que soit leur ordre, on pourrait utiliser la méthode equals fournie par la classe Arrays. Cependant, cette méthode nécessite que les tableaux soient triés avant de pouvoir être utilisée pour vérifier l'égalité.
En comparant les tableaux de la manière indiquée dans l'exemple de code, nous nous assurons qu'ils ont les mêmes éléments, ordre, et la longueur.
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!