Méthode main(String arg[])

Fermé
fil - 28 oct. 2003 à 10:25
 Leiko - 18 nov. 2008 à 19:18
Bonjour à tous,
Juste une petite question pour commencer.
Qui peux m'expliquer pourquoi la méthode main fonctionne également lorsque sa signature comporte les crochets [] sur arg et pas sur String ???

ex: public static void main (String arg[])

2 réponses

Ok,
mais si je mais main(String[] arg) comme j'ai toujours fais, ça fonctionne parfaitement...
4
En java, tu as 2 façon de déclarer un tableau :

_ <type>[] <nom_du_tableau> = new <type>[<taille>];
_ <type> <nom_du_tableau>[] = new <type>[<taille>];


Préfères la première façon à la deuxième car elle est plus correcte.
Et le fait de pouvoir l'écrire de ces 2 façons explique pourquoi ça marche avec les deux écritures dans ton cas, comme dans tout les cas d'ailleurs ;)

En d'autre terme :

int tab[] = new int[4]; (est égale à) int[] tab = new int[4];

Voilà !
Tchoû
0
Nettogrof Messages postés 521 Date d'inscription lundi 29 septembre 2003 Statut Membre Dernière intervention 8 décembre 2005 672
28 oct. 2003 à 15:20
car lors de l'éxecution tu peux passer des paramètres, qui sont enfin de compte plusieurs strings, donc un tableau de string.

Mais lorsque tu recois des parmètres ( peut importe la fonction) , tu les recois comme ceci:
public void  test(int valeur[], String nom[]){
}


C'est lors d'une initialisation de variable que les [] peuvent être mise a String ou int
int[] note= int[5];


dont dans
public static void main(String arg[]){
}
Tu recois un paramètre , tu ne l'initialise pas.

Espérant avoir éclairer ta lanterne


Nettogrof tseb era seiromem emoS
1