Utilisation de charAt dans un programme palindrome (java)
touta_touta
Messages postés
368
Statut
Membre
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
bonsoir ,
je veux savoir comment manipuler la classe charAt() pour comparer la première caractère et la dernière caractère dans une chaîne pour tester si cette chaîne et palindrome ou non .merci pour ceux qui vont m'aidez :)
je veux savoir comment manipuler la classe charAt() pour comparer la première caractère et la dernière caractère dans une chaîne pour tester si cette chaîne et palindrome ou non .merci pour ceux qui vont m'aidez :)
1 réponse
-
En fait, en interne, un String est un char[] et la méthode charAt fait directement référence à une case de ce tableau :
private final char value[];
public char charAt(int index) {
if ((index < 0) || (index >= value.length)) {
throw new StringIndexOutOfBoundsException(index);
}
return value[index];
}
Il faut donc donner en paramètre un indice entre 0 et length()-1 pour récupérer le caractère que tu veux. Donc le premier caractère c'eststr.charAt(0)
et le dernierstr.charAr(str.length()-1)
--
La confiance n'exclut pas le contrôle-
-
ça veut dire que si tu mets un nombre négatif ou supérieur à la taille de la chaîne de caractères, alors on te renverras une erreur "StringIndexOutOfBoundsException" avec la valeur de l'index que tu as passé en paramètres.
S'il n'y avait pas ça tu ferais un appel value[index] avec un mauvais indice et tu aurais une erreur "ArrayOutOfBoundsException". Sauf qu'il est toujours mieux de récupérer les erreurs le plus tôt possible pour avoir une explication cohérente.
Si tu avais un ArrayOutOfBoundsException en manipulant un String, tu ne comprendrais pas de quel tableau il s'agit si tu ne savais pas qu'un String était un tableau...
-