Qu'est-ce qui cause une exception java.lang.ArrayIndexOutOfBoundsException et comment puis-je l'empêcher ?

Qu'est-ce que cela ArrayIndexOutOfBoundsExceptionsignifie et comment puis-je m'en débarrasser?

Voici un exemple de code qui déclenche l'exception :

String[] names = { "tom", "bob", "harry" };
for (int i = 0; i <= names.length; i++) {
System.out.println(names[i]);
}


Solution du problème

De cet excellent article: ArrayIndexOutOfBoundsException in for loop

Pour le dire brièvement:

Dans la dernière itération de

for (int i = 0; i <= name.length; i++) {

isera égal à name.lengthce qui est un index illégal, puisque les indices de tableau sont basés sur zéro.

Votre code devrait lire

for (int i = 0; i < name.length; i++) 
^

Commentaires

Posts les plus consultés de ce blog

La fonction GCP Cloud pour écrire des données dans BigQuery s'exécute avec succès, mais les données n'apparaissent pas dans la table BigQuery

Erreur Symfony : "Une exception a été levée lors du rendu d'un modèle"

Le shell POSIX (sh) redirige stderr vers stdout et capture stderr et stdout dans des variables