Alphabet dans un tableau

[Résolu/Fermé]
Signaler
-
Messages postés
16372
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
23 juillet 2021
-
Bonjour,

J'aimerai remplir un tableau avec l'alphabet.

J'ai pensé utilisé ce code mais il ne fonctionne pas, j'ai un ArrayIndexOutOfBoundException. Pourquoi ?

		for (char i = 'A'; i <= 'Z'; i++){
			tableLettres[i] = i;
		}


Merci



2 réponses


J'ai compris mon erreur et solutionné mon problème au final :)

		for (int i = 0; i <= TAILLE_LETTRES; i++){
			for (char j = 'A'; j <= 'Z'; j++){
				tableLettres[i] = j;
				i++;
			}
		}
Messages postés
16372
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
23 juillet 2021
2 860
C'est affreusement moche ! La deuxième boucle ne sert à rien.

Tu devrais plutôt faire :

for (char i = 'A'; i <= 'Z'; i++) {
    tableLettres[i-'A'] = i;
}
Messages postés
16372
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
23 juillet 2021
2 860
Bonjour,

Combien de cases contient ton tableau ?

La valeur décimale de 'A' c'est 65, donc si tu fais
tableLettres[i] = i
avec
i = 'A'
tu vas mettre ta valeur à la case 65... sous réserve que ton tableau soit dimensionné pour ça.

J'imagine d'ailleurs que l'ArrayIndexOutOfBoundException est accompagnée de cette valeur 65 dans la description complète de l'erreur.