Accéder au contenu principal
Documents
Tableaux JavaProgrammation orientée objet en JavaTraitement des fichiers en JavaIntroduction To JavaLes bases du langage JavaMots-clés Java

Inadéquation des tableaux Java()

La méthode Arrays.mismatch() en Java fait partie du paquetage java.util et est utilisée pour trouver le premier indice auquel deux tableaux diffèrent. Cette méthode est utile pour comparer des tableaux afin de déterminer où ils commencent à avoir des éléments différents. Elle renvoie l'indice de la première erreur ou -1 si les tableaux sont identiques.

Utilisation

Arrays.mismatch() est généralement utilisée lorsque vous devez comparer deux tableaux élément par élément afin d'identifier le premier point de différence. Il prend en charge les tableaux de tous les types primitifs ainsi que les tableaux d'objets.

Syntax

int mismatchIndex = Arrays.mismatch(array1, array2);
  • array1 et array2: Les tableaux à comparer.
  • mismatchIndex: L'index de la première erreur, ou -1 si aucune erreur n'a été trouvée.

Exemples

Exemple 1 : Tableaux identiques

import java.util.Arrays;

public class MismatchExample1 {
    public static void main(String[] args) {
        int[] array1 = {1, 2, 3, 4, 5};
        int[] array2 = {1, 2, 3, 4, 5};

        int mismatchIndex = Arrays.mismatch(array1, array2);
        System.out.println("Mismatch index: " + mismatchIndex);
    }
}

Dans cet exemple, array1 et array2 sont identiques. La méthode Arrays.mismatch() renvoie -1, ce qui indique qu'il n'y a pas d'incompatibilité.

Exemple 2 : Différents tableaux

import java.util.Arrays;

public class MismatchExample2 {
    public static void main(String[] args) {
        String[] array1 = {"apple", "banana", "cherry"};
        String[] array2 = {"apple", "berry", "cherry"};

        int mismatchIndex = Arrays.mismatch(array1, array2);
        System.out.println("Mismatch index: " + mismatchIndex);
    }
}

Ici, les tableaux diffèrent à l'index 1, où "banana" dans array1 est différent de "berry" dans array2. La méthode Arrays.mismatch() renvoie la valeur 1.

Exemple 3 : Tableaux de différentes longueurs

import java.util.Arrays;

public class MismatchExample3 {
    public static void main(String[] args) {
        char[] array1 = {'a', 'b', 'c'};
        char[] array2 = {'a', 'b'};

        int mismatchIndex = Arrays.mismatch(array1, array2);
        System.out.println("Mismatch index: " + mismatchIndex);
    }
}

Dans ce cas, array1 est plus long que array2. La méthode renvoie 2, qui est l'indice où array2 se termine et où array1 a un élément supplémentaire.

Conseils et bonnes pratiques

  • Sécurité nulle: Assurez-vous qu'aucun des tableaux n'est nul avant d'appeler Arrays.mismatch(), car cela entraînera une erreur de NullPointerException.
  • Longueur des tableaux: Considérez la longueur des deux tableaux. Si les tableaux ont des longueurs différentes et qu'aucune erreur n'est trouvée jusqu'à la longueur du tableau le plus court, la méthode renvoie la longueur du tableau le plus court.
  • Performance: Arrays.mismatch() peut être plus efficace que l'itération manuelle dans les tableaux, en particulier pour les tableaux de grande taille.
  • Type Compatibilité: Assurez-vous que les tableaux comparés sont du même type, car la méthode n'effectue pas de conversion de type.

En utilisant Arrays.mismatch(), les développeurs peuvent déterminer efficacement le premier point de différence entre deux tableaux, ce qui facilite le débogage et les tâches de comparaison de données.

Apprendre l'essentiel de Java

Développez vos compétences en Java à partir de la base et maîtrisez les concepts de programmation.
Commencez à apprendre gratuitement