[Java] Integer.parseInt
Résolu/Fermé
A voir également:
- Integer.parseint(args[0])
- Void(0) ✓ - Forum Réseaux sociaux
- Javascript void(0) ✓ - Forum Réseaux sociaux
- Void(0); ✓ - Forum Mozilla Firefox
- Javascript : void :0 - Forum Mozilla Firefox
- Excel différent de 0 ✓ - Forum Excel
8 réponses
kij_82
Messages postés
4089
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
22 févr. 2008 à 09:26
22 févr. 2008 à 09:26
Bonjour,
La fonction java parseInt de la classe Integer soulève une exceptin de type NumberFormatException il me semble.
Si la chaine que tu tente de parser n'est pas un numérique, cette exception est levée pour signaler qu'il ne s'agit pas d'un numérique. Il faut donc que tu gère ce type d'erreur en la catchant. Si tu pose cette question j'imagine que tu ne sais pas ce que c'est encore que la gestion des erreurs en java, voici donc le code correctif pour pouvoir gérer ton erreur :
ps: erreur en plus : tu attribue la valeur d'une variable non déclarée (s2) à ton tableau ce qui cause certainement une NullPointerException. De plus c'est généralement l'inverse qu'il faut faire... mettre la variable de ton tableau d'argument dans ta variable locale pour ensuite travailler avec sa valeur. Si tu souhaite initialiser cette variable s2 avec une valeur par défaut, fait le avant de récupérer la valeur dans ton tableau d'argument ;)
La fonction java parseInt de la classe Integer soulève une exceptin de type NumberFormatException il me semble.
Si la chaine que tu tente de parser n'est pas un numérique, cette exception est levée pour signaler qu'il ne s'agit pas d'un numérique. Il faut donc que tu gère ce type d'erreur en la catchant. Si tu pose cette question j'imagine que tu ne sais pas ce que c'est encore que la gestion des erreurs en java, voici donc le code correctif pour pouvoir gérer ton erreur :
public class Conversion { // point d'entrée général public static void main (String[] args) { String s1 = "1"; String s2 = "2"; // --- Retrieve program arguments if ( args.length > 0 ) s1 = args[0]; if ( args.length > 1 ) args[1]=s2; int i = 0; try{ i=Integer.parseInt(args[0])+ Integer.parseInt(args[1]); System.out.println ("Nombre calculé : "+i) ; }catch (NumberFormatException e){ System.out.println("Error : "+e.getMessage()); } }//End main }
ps: erreur en plus : tu attribue la valeur d'une variable non déclarée (s2) à ton tableau ce qui cause certainement une NullPointerException. De plus c'est généralement l'inverse qu'il faut faire... mettre la variable de ton tableau d'argument dans ta variable locale pour ensuite travailler avec sa valeur. Si tu souhaite initialiser cette variable s2 avec une valeur par défaut, fait le avant de récupérer la valeur dans ton tableau d'argument ;)
13 juin 2014 à 01:56