IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

java.lang.ArrayIndexOutOfBoundsException : 0


Sujet :

Java

  1. #1
    Membre expérimenté
    Avatar de kaiser59
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 264
    Points : 1 350
    Points
    1 350
    Par défaut java.lang.ArrayIndexOutOfBoundsException : 0
    Bonjour,

    Voilà il y a quelques années j'ai eu des cours de java qui étaient sous Visual Studio quelque chose de ce genre et j'ai encore les cours

    La je me suis remis dessus mais sous Eclipse et il y a une chose que je ne comprend pas c'est que j'ai un bout de code que j'ai récupéré où dedans une popup s'ouvre et attend que l'on fasse une saisie, jusque là tout va bien mais ça c'était sous VS or sous Eclipse je n'ai pas cette popup... Comment cela fonctionne, je précise je débute sous Eclipse.

    Voici le code qui, s'il fonctionne bien, attend une saisie de l'utilisateur :
    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public class Class1
    {
     public static void main (String[] args)
     {System.out.println("Vous avez ecrit : ");
      for (int i=0;i<args.length;i++)
    	 {System.out.print(args[i]+" "+args[i].length()+" caracteres ");
         }
    	 System.out.println("il y a : "+args.length+" mots");
    	 System.out.println("La 2eme lettre est : "+args[0].charAt(0));
     }
    }

    j'ai même plutôt un message d'erreur me disant :
    java.lang.ArrayIndexOutOfBoundsException : 0
    ça j'avais compris qu'il y a un problème de débordement dans le tableau mais si je ne peux rien rentrer comment je fais ?

    Merci d'avance

  2. #2
    Membre averti
    Avatar de DaveShot
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2008
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 238
    Points : 384
    Points
    384
    Par défaut
    Bonjour,
    ton erreur vient du fait que tu demandes la première valeur de ton tableau, alors que tu ne sais pas si celui-ci est vide ou non.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.out.println("La 2eme lettre est : "+args[0].charAt(0));
    Pour utiliser ton programme avec Eclipse il faut que tu ajoutes la "saisie de ton utilisateur" dans les arguments du "Run configuration" comme dans l'exemple ci-dessous :
    Images attachées Images attachées  

  3. #3
    Membre expérimenté
    Avatar de kaiser59
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 264
    Points : 1 350
    Points
    1 350
    Par défaut
    Merci DaveShot cela fonctionne beaucoup mieux

    Mais petite question, est-il possible d'avoir une boite de dialogue qui s'ouvre ou quelque chose de ce genre parce qu'à chaque fois retourner dans la fenêtre juste pour modifier la valeur... ?

  4. #4
    Membre chevronné
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Points : 2 011
    Points
    2 011
    Par défaut
    Tu peux utiliser le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String maSaisie = JOptionPane.showInputDialog(null, "Veuillez saisir une valeur");
    Plus de détail sur la classe JOptionPane voir ici.

    Sauf que ça te renvoie un objet de type String (puisque c'est fait pour saisir une valeur) et non pas un tableau.


    Précise ce que tu veux faire.

  5. #5
    Membre expérimenté
    Avatar de kaiser59
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 264
    Points : 1 350
    Points
    1 350
    Par défaut
    Citation Envoyé par Deadpool Voir le message
    Tu peux utiliser le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String maSaisie = JOptionPane.showInputDialog(null, "Veuillez saisir une valeur");
    Plus de détail sur la classe JOptionPane voir ici.

    Sauf que ça te renvoie un objet de type String (puisque c'est fait pour saisir une valeur) et non pas un tableau.


    Précise ce que tu veux faire.
    Ok ça j'ai un peu l'habitude avec asp et je connaissais le truc du integer.parseint

    Merci à vous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 23/12/2009, 10h56
  2. Erreur java lang.ArrayIndexOutOfBoundsException
    Par lerorodu51 dans le forum NetBeans
    Réponses: 8
    Dernier message: 04/06/2009, 19h17
  3. Réponses: 4
    Dernier message: 17/11/2007, 15h29
  4. [XSLT] java.lang.ArrayIndexOutOfBoundsException sur Transformation XSLT
    Par SONY30 dans le forum Format d'échange (XML, JSON...)
    Réponses: 11
    Dernier message: 11/12/2006, 16h59
  5. Réponses: 4
    Dernier message: 30/07/2006, 14h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo