Différence entre string[] args et string args[]

Résolu
doussamaha Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
 doussamaha -
salut quel est la différence entre string[ ] args et string args[ ]
merci.

1 réponse

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Il n'y a pas de différence.

La notation "crochets sur le type" est la plus correcte, elle permet d'indiquer que le type de données est de type tableau.

String a = "A";
String[] b = {"b1","b2","b3"};
String[][] c = {{"c11","c12"},{"c21","c22"}};

La notation "crochets sur la variable" est autorisée pour permettre de faire des déclarations mixtes comme ceci :

String a = "A", b[] = {"b1","b2","b3"}, c[][] = {{"c11","c12"},{"c21","c22"}};

Mais dans les deux cas, les données seront les mêmes.

Pour le cas de l'argument de la méthode main, la notation absolument parfaite serait
String...args
qui est là encore un tableau, mais qui permet de passer un nombre variables d'arguments à la méthode (0, 1 ou plusieurs). Pour la méthode main cette notation est sémantiquement plus correcte que celles avec crochets.

public static void exemple(String...tab)
{
    System.out.println(tab.length);
}

public static void main(String...args)
{
    exemple(); // 0
    exemple("a"); // 1
    exemple("a","b"); // 2

    String[] tab = {"a","b","c"};
    exemple(tab); // 3
}
1
doussamaha
 
merci
0