Pourquoi erreur d'exécution ?

Résolu/Fermé
Aminax Messages postés 81 Date d'inscription jeudi 26 septembre 2013 Statut Membre Dernière intervention 29 mai 2015 - Modifié par AssassinTourist le 8/01/2014 à 10:02
Aminax Messages postés 81 Date d'inscription jeudi 26 septembre 2013 Statut Membre Dernière intervention 29 mai 2015 - 8 janv. 2014 à 19:43
Bonjour ;
s'il vous plait ; pourquoi il y a une erreur d'exécution :
public class Exemple {
public static void main(String args[]) {
String str = args[1];
System.out.println(str);
}}
et merci d'avance

1 réponse

irmeche Messages postés 71 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 18 juillet 2014 17
8 janv. 2014 à 11:44
c'est quoi le type de ton erreur,

je ne sais pas si tu passes en paramètre des arguments d'entrée ?

si tu passes un seul alors il faut corriger ton code et mettre

String str = args[0]; 


si tu passe deux paramètre ca doit fonctionner parce que le args[1] c le deuxième paramètre .
0
Aminax Messages postés 81 Date d'inscription jeudi 26 septembre 2013 Statut Membre Dernière intervention 29 mai 2015
Modifié par Aminax le 8/01/2014 à 12:05
En fait c'est un qcm ; ils ont donné ce code et avec les choix :
1 Ce programme ne se compile pas car il y a une erreur de syntaxe
2 L'exécution échoue car il y a une erreur d'exécution
3 L'exécution de ce programme affiche à l'écran la chaine de caractère passée en argument"

ils ont coché la deuxième mais je ne sais pas pourquoi ?
Merci irmeche d'avoir répondu
0
irmeche Messages postés 71 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 18 juillet 2014 17
8 janv. 2014 à 15:05
comme je l'ai dit en haut:

si tu fais :

java Exemple argument1

ça va te générer une erreur d'exécution cas ton programme attend le deuxieme argument

mais si tu fais:

java Exemple argument1 argument2

ton programme fonctionne correctement et affiche argument2
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
8 janv. 2014 à 19:25
Il y avait donc deux réponses possibles !!
De toute façon les erreurs d'exécution, parfois ça marche, parfois ça ne marche pas, ça dépend de la partie dynamique de l'application. En l'occurrence ici ça dépend des paramètres d'entrées du programme, donc comme disait irmeche : 2 arguments (ou plus) ça marche, réponse 3, mais avec 0 ou 1 argument tu auras une IndexOutOfBoundsException, réponse 2.
0
Aminax Messages postés 81 Date d'inscription jeudi 26 septembre 2013 Statut Membre Dernière intervention 29 mai 2015
8 janv. 2014 à 19:43
ahh là j'ai bien compris :) merci beaucoup KX et Irmeche
0