Exception personnaliées
coran20
Messages postés
6
Statut
Membre
-
danimo -
danimo -
Bonjour,
J'ai envie de savoir que fait cette ligne exactement:
avec str un tableau de String.
Svp aidez moi, je suis débutante en Java.
Merci d'avance.
J'ai envie de savoir que fait cette ligne exactement:
int taille = Integer.parseInt(str[0]);
avec str un tableau de String.
Svp aidez moi, je suis débutante en Java.
Merci d'avance.
1 réponse
-
Salut,
int taille = Integer.parseInt(str[0]);
L'élément 0 du tableau str (de String) doit contenir une valeur entière correspondant à une taille.
On veut extraire cette taille du tableau en la convertissant de String à int dans la variable taille.
Mais en contrôlant que str[0] contient bien un entier (par exemple 12345).
Une manière sûre de le faire est de détecter les éventuelles exceptions:
Plusieurs cas sont possibles:
-str[0] ne contient que des chiffres 0 à 9 plus l'eventuel signe - ce qui serait étrange pour une taille !
(exemple -1234). Si le signe - existe il doit être en début de chaîne...
Cette valeur ne provoquera pas la levée d'exception.
-str[0] = +1234 provoquerait la levée d'une exception car la valeur est positive par défaut et le signe + ne doit pas figurer (ce serait considéré comme non numérique).
-str[0] = 123x5 (donc non numérique) provoquera pas la levée d'une exception.
-str[0] = 123.50 aussi.
-str[0] = 1234567890123 aussi (valeur hors limites mini/maxi d'un int).
Comment faire:
try { int taille = Integer.parseInt(str[0]); } catch (NumberFormatException nfe) { System.out.println(nfe.toString() + " TROP LONG OU NON NUMÉRIQUE"); }
Cordialement,
Dan