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

Langage Java Discussion :

problème ds main(String [] args)


Sujet :

Langage Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 17
    Points : 12
    Points
    12
    Par défaut problème ds main(String [] args)
    bonjour tout le monde je suis débutant et je trouve un problème quand j'éxécute mon code car j'ai une exception qui dit
    Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
    at ExTestDrive.main(ExTestDrive.java:25)

    en sachant que la compilation n'affiche aucune d'erreur.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     class MyEx extends Exception{ }
     public class ExTestDrive{
     	static void prendreRisque(String t) throws MyEx{
     		System.out.print("a");
     		if ("non".equals(t)){
     			throw new MyEx();
     		}
     		System.out.print("n");
     	}
     
     	public static void main(String[] args){
     		String test = args[0];
     		try{
     			System.out.print("l");
     			prendreRisque(test);
     			System.out.print("c");
     		}catch(MyEx e){
     		System.out.print("v");
     
     		}finally{
     			System.out.print("e");
     			System.out.print("r");
     		}
     	}
     }
    en plus le tableau de string qui est dans l'argument du main il sert a quoi.
    merci pour votre patience

  2. #2
    Membre averti Avatar de Amine_sas
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    245
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 245
    Points : 307
    Points
    307
    Par défaut
    Salut,
    Le tableau String[] args sert à transmettre les argument tapés par l'utilisateur au programme lorsque tu exécutes en ligne de commande.
    Exemple: si tu exécutes ton programme en tapant (depuis l'invite de commande de windows par exemple) :
    java monProgramme monNom monPrenom
    les deux chaine monNom et monPrenom seront stockées respectivement dans args[0] et args[1] que tu peux récupérer ainsi:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ....
    System.out.println("Hello: "+args[0]+ " "+args[1]);
    Si tu tapes seulement:
    le tableau args ne contiendra aucun élément d'où l'exception ArrayIndexOutOfBoundsException qui veut dire que tu essayes d'accèder à un élement qui n'existe pas (args[0]).


    Pour remédier, testes en premier la taille du tableau:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if (args.length > 0)
    ....
    "Un remboursement des programmes défectueux serait envisageable mais toute l'industrie du logiciel ferait faillite la première année." Andrew Tanenbaum.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 17
    Points : 12
    Points
    12
    Par défaut problème dans le main
    merci Amine pour l'explication, mais moi j'utilise Jcreator alors quand j'excute je ne peut introduire les valeurs de args ou si c'est possible je ne sai pas le faire, car je clic sur le bouton Run pour le faire alors s'il ya un autre methode je serai ravis de votre aide mecri,

  4. #4
    Membre averti Avatar de Chatbour
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2006
    Messages
    431
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2006
    Messages : 431
    Points : 305
    Points
    305
    Par défaut
    Salut à tous

    Pour entrer des paramètres sous JCreator :
    menu Project -> Projects Settings... -> Onglet JDK Tools -> choisir Run Application dans le combo -> cliquer sur Default puis Edit... -> Onglet Parameters -> cocher Propmpt for main method arguments.

    Cordialement..

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 17
    Points : 12
    Points
    12
    Par défaut problèm ds le main
    merci, sa marche maitenant.

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

Discussions similaires

  1. Methode public static void main (String [] args)
    Par jeremypd dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 09/01/2017, 10h53
  2. Problème avec ArrayList <String>
    Par fiphi dans le forum Collection et Stream
    Réponses: 8
    Dernier message: 29/08/2006, 09h30
  3. Problème de conversion string->int
    Par seheiahs dans le forum Langage
    Réponses: 4
    Dernier message: 28/06/2006, 10h42
  4. Sale problème avec les strings et les fichiers
    Par acieroid dans le forum C++
    Réponses: 18
    Dernier message: 26/04/2006, 09h47
  5. problème fin de string sous windows 98
    Par LAPLACE dans le forum Windows
    Réponses: 1
    Dernier message: 07/03/2006, 11h09

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