Code ascii

Résolu
helloworld95 -  
 helloworld95 -
Bonjour,

J'aimerai associer la premiere lettre d'un nom avec l'indice d'une table.
Ex: a ----> 0
b ----> 1
.........
z----->25

J'ai donc fait
int indice = (int)nom.charAt(0)
mais j'ai le code ASCII donc ca ne correspond pas.

Je ne sais pas comment faire..

Merci


A voir également:

1 réponse

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Bonjour,

Il faudrait juste faire une soustraction pour arriver à ton résultat :
int indice = nom.charAt(0) - 'a';


Remarque : même si les premiers caractères sont identiques, Java travaille en UTF-16, pas en ASCII.
0
helloworld95
 
Merci et je dois toujours faire - a ou en fonctoin de la lettre ? Donc -b si je tombe sur un b, -c sur un c etc ?
0
Dalfab Messages postés 706 Date d'inscription   Statut Membre Dernière intervention   101
 
Le - 'a' permet d'avoir la lettre 'a' qui donnera 0, la lettre 'b' donnera 1, etc.
Donc quelle que soit la lettre à convertir il faut faire
int indice = nom.charAt(0) - 'a'; 
0
helloworld95
 
D'accord merci ca fonctionne !
0