Je reçois cette erreur lorsque j'essaie d'utiliser Integer.parseInt () avec un seul caractère.
String s = "s";
System.out.println((char) Integer.parseInt(s));
Est-ce que ce qui me donne l'erreur est la suivante:
Exception in thread "main" Java.lang.NumberFormatException: For input string: "S"
La lettre S
n'est pas un chiffre. Vouliez-vous écrire le nombre 5?
String s = "5";
System.out.println((char) Integer.parseInt(s));
Ou avez-vous voulu imprimer la valeur ASCII ou Unicode du caractère S
?
char s = 's';
System.out.println((int) s);
parseInt(String s)
est utilisé pour convertir des entiers sous forme de chaîne comme "42"
en valeur qu'ils représentent en décimal. Utilisez String.charAt(0)
si vous voulez le premier caractère.
oui bien sûr .. Integer.parseInt peut uniquement représenter sous forme de nombres entiers des chaînes numériques.Try:
Pour analyser une chaîne en un nombre, vous devez avoir un nombre valide dans la chaîne.
Ici, votre S n'est pas un nombre.
String s = "s"; System.out.println((char) Integer.parseInt(s));
Cela devrait être quelque chose comme ça:
String s = "100";//or whatever integer you want to parse.
System.out.println((char) Integer.parseInt(s));
cela n'a rien à voir avec une valeur unique ou multichar. Un simple test de ceci est que, si vous supprimez le '(guillemets) de la valeur, trouverez-vous un Integer?
Si non, la Integer.parseiInt()
est vouée à l'échec.
Je vous recommande d’aller dans un tutoriel très rapide et bref situé à http://www.tutorialspoint.com/Java/number_parseint.htm