Méthode main(String arg[])

fil -  
 Leiko -
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

fil
 
Ok,
mais si je mais main(String[] arg) comme j'ai toujours fais, ça fonctionne parfaitement...
4
Leiko
 
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 522 Statut Membre 672
 
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