Qu'est-ce que ArrayIndexOutOfBoundsException
et comment s'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]);
}
1 votes
En ce qui concerne la dernière question, un code serait utile. Accédez-vous au tableau avec un index connu, ou devez-vous commencer à déboguer pour comprendre comment l'index est calculé lorsque l'erreur se produit ?
49 votes
Remplacer
i <= name.length
coni < name.length
- ou mieux, écrire une boucle for améliorée. (for (String aName : name) { ... }
)2 votes
Cela signifie que vous voulez obtenir un élément du tableau qui n'existe pas, 'i<=name.length' signifie que vous voulez obtenir l'élément length+1 - qui n'existe pas.
1 votes
fr.wikipedia.org/wiki/Off-by-one_error
0 votes
Le tableau sort de ses limites lorsque l'indice que vous essayez de manipuler est supérieur à la longueur du tableau. Pour être correct, vos indices doivent toujours être inférieurs d'une unité au nombre total d'éléments du tableau, car l'indice du tableau commence à 0 et non à 1.
0 votes
Le classique
null
exception du pointeur.