Exception en java
Résolu
saidreal
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
bonjour
svp j'ai un problème lorsque je veux exécuter mon code java contenant l'instruction:
int x=Integer.parseInt(args[0]);
il me leve une exception: Exception Thread java"main java.lang.Array.IndexOutOfBoundsException: 0
je veux saisir par le clavier des données numérique aprés : System.out.println("donner x"); ou par une autre méthode si vous la connaissez.
je pense que la CLASSPATH est mal configuréee (comment svp?)
j'ai Windows XP.
merci de votre aide
svp j'ai un problème lorsque je veux exécuter mon code java contenant l'instruction:
int x=Integer.parseInt(args[0]);
il me leve une exception: Exception Thread java"main java.lang.Array.IndexOutOfBoundsException: 0
je veux saisir par le clavier des données numérique aprés : System.out.println("donner x"); ou par une autre méthode si vous la connaissez.
je pense que la CLASSPATH est mal configuréee (comment svp?)
j'ai Windows XP.
merci de votre aide
2 réponses
-
ton exception n'a rien a voir avec le classpath. indexoutofbounds veut dire ce qu'il dit, tu as passé un mauvais index.
les tableaux en Java sont numérotés à partir de 1, à moins que je me trompe complètement.
Ce qui est sûr c'est que ca n'a rien a voir avec ton classpath-
-
ok autant pour moi alors, j'avais bien un doute sur ce que je t'ai dit.
bon j'ai tapé les quelques lignes de codes, et c'est tout simple :
la vaiable args n'est pas forcément instanciée. si tu ne passe pas de paramètre a ton appel à l'exécutable java, args[0] n'existe pas.
il faut protéger cet appel par un test sur args.length.
voila un exemple type :
import java.util.*; public class test { public static void main(String[] args) { test t = new test(); if(args.length >= 1) { int x=Integer.parseInt(args[0]); System.out.println(x); } } test() { } } -
-
-
J'ai essayé de faire comme vous avec précisé c'est à dire j'ai instancié un objet de la classe mais quand j'écris args[0], une exception persiste. quoi faire?
-
Ne te greffe pas sur une discussion résolue il y a plus de 6 ans !!!
Si tu as une exception en faisant args[0] c'est parce que args.length==0, autrement dit, tu n'as pas passé d'arguments lors de l'exécution de ton programme Java.
Regarde le tutoriel Command-Line Arguments pour voir comment s'en servir correctement. -
Oui exactement je n'ai pas passé d'arguments lors de l'exécution de mon programme Java. Mais sincèrement j'ai pas su comment faire pour remplir le tableau args[] lors de l'exécution. peut être ça apparaît débile mais je suis débutante et je sais pas comment faire. j'ai lu le tutoriel mais j'ai pas compris grande chose.
Merci de me répondre et aider. -
-
-
Si tu as une exception qui apparaît dans ton programme, c'est bien que tu as compilé et exécuté ta classe non ? Comment tu as fait ?
Ici tu as une classe Echo dans un fichier Echo.java, que tu compiles pour te donner un fichier Echo.class et c'est ce fichier Echo.class que tu exécutes en appelant la commande java Echo
Si ton programme s'appelle autrement tu changes Echo par le nom de ta classe, moi je n'ai fait que reprendre l'exemple du tutoriel d'Oracle que je t'ai donné hier.
-