Fonction char
tataaoa
-
nicocorico Messages postés 846 Statut Membre -
nicocorico Messages postés 846 Statut Membre -
Bonjour,
Je ne comprend pas le sens de cette fontion :
D'apres son nom je me doute qu'elle convertit un caractere en nombre, mais je ne comprend pas le procédé. a quoi sert le "-" ?
Je ne comprend pas le sens de cette fontion :
D'apres son nom je me doute qu'elle convertit un caractere en nombre, mais je ne comprend pas le procédé. a quoi sert le "-" ?
public static int charToInt (char c) {
return (c - 'a');
}
1 réponse
-
Bonjour,
c'est simplement que la valeur du caractère "a" est donné comme base à soustraire pour obtenir l'index du caractère dans l'alphabet...
En fait chaque symbole à une valeur correspondante dans la table ASCII, le "a" à la valeur 97, on soustrait donc cette valeur afin de partir de a = 0.
-
D'ailleurs si le "-" est autorisé c'est parce qu'on a implicitement déjà convertit chacun des deux caractères c et 'a' en entiers. Si on les explicite dans ta méthode ça donnerait ceci :
public static int charToInt (char c) { return ((int) c) - ((int) 'a'); // Le "- " est bien la soustraction }
Remarque @nicocorico : par défaut en Java on manipule de l'UTF-16 pas de l'ASCII. -
-