2011-08-08 3 views
57

J'ai vu différentes approches pour définir un tableau statique en Java. Soit:Comment initialiser un tableau statique?

String[] suit = new String[] { 
    "spades", 
    "hearts", 
    "diamonds", 
    "clubs" 
}; 

... ou seulement

String[] suit = { 
    "spades", 
    "hearts", 
    "diamonds", 
    "clubs" 
}; 

ou comme List

List suit = Arrays.asList(
    "spades", 
    "hearts", 
    "diamonds", 
    "clubs" 
); 

Y at-il une différence (à l'exception de la définition de la liste des cours)?

Quelle est la meilleure façon (performance sage)?

Répondre

95

Si vous créez un tableau, alors il n'y a pas de différence, cependant, ce qui suit est plus propre:

String[] suit = { 
    "spades", 
    "hearts", 
    "diamonds", 
    "clubs" 
}; 

Mais, si vous voulez passer un tableau dans une méthode que vous devez appeler comme ceci:

myMethod(new String[] {"spades", "hearts"}); 

myMethod({"spades", "hearts"}); //won't compile! 
+1

meilleure réponse jusqu'à présent –

8

Non, pas de différence. C'est juste syntactic sugar. Arrays.asList(..) crée une liste supplémentaire.

Questions connexes