Maison >Java >javaDidacticiel >Comment trouver l'index d'un élément dans un tableau Java ?

Comment trouver l'index d'un élément dans un tableau Java ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-14 22:28:02296parcourir

How Do I Find the Index of an Element in a Java Array?

Récupération de l'index d'un élément dans un tableau Java

Lors de la recherche de la méthode indexOf d'un tableau, il est essentiel de noter que cette méthode exacte n'est pas présent dans la syntaxe de base de Java. Cependant, il existe des approches alternatives utilisant la classe utilitaire Arrays pour récupérer efficacement l'index d'un élément.

Approche 1 : Arrays.asList (Tableaux non primitifs non triés)

Pour tableaux non triés qui ne sont pas des types primitifs (int[], double[], etc.), vous pouvez le convertir en ArrayList en utilisant java.util.Arrays.asList :

java.util.Arrays.asList(theArray).indexOf(o)

Ceci renvoie la première occurrence de o dans la liste (convertie à partir du tableau) ou -1 si elle n'est pas trouvée.

Approche 2 : Recherche binaire (tableaux triés)

Pour les tableaux triés, vous pouvez tirer parti de l'algorithme de recherche binaire pour accélérer performance :

java.util.Arrays.binarySearch(theArray, o)

Cette méthode renvoie l'index de o dans le tableau trié ou une valeur négative indiquant le point d'insertion où o doit être inséré pour maintenir l'ordre trié.

Remarque :

Si le tableau contient des types primitifs et n'est pas trié, il est recommandé d'utiliser des solutions alternatives telles que les itérations basées sur des boucles fournies dans d'autres réponses. Arrays.asList peut être compilé et exécuté mais fournira des résultats inexacts pour les tableaux primitifs qui ne sont pas triés.

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!

Déclaration:
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