Utilisation de charAt dans un programme palindrome (java)

touta_touta Messages postés 368 Statut Membre -  
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 :)
A voir également:

1 réponse

KX Messages postés 19031 Statut Modérateur 3 020
 
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'est
str.charAt(0)
et le dernier
str.charAr(str.length()-1)
--
La confiance n'exclut pas le contrôle
0
touta_touta Messages postés 368 Statut Membre 6
 
bonsoir ,
merci pour votre réponse mais si il te plait peut tu m'expliquer plus cette ligne " throw new StringIndexOutOfBoundsException(index);" car je suis encore débutante en java et merci d'avance :)
0
KX Messages postés 19031 Statut Modérateur 3 020
 
ç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...
0