Как инициализировать статический массив?
Я видел различные подходы к определению статического массива в Java. Или:
String[] suit = new String[] {
"spades",
"hearts",
"diamonds",
"clubs"
};
... или только
String[] suit = {
"spades",
"hearts",
"diamonds",
"clubs"
};
или как List
List suit = Arrays.asList(
"spades",
"hearts",
"diamonds",
"clubs"
);
Есть ли разница (за исключением определения списка, конечно)?
Каков наилучший способ (производительность)?
Ответы
Ответ 1
Если вы создаете массив, тогда нет никакой разницы, однако следующее:
String[] suit = {
"spades",
"hearts",
"diamonds",
"clubs"
};
Но если вы хотите передать массив в метод, вы должны называть его следующим образом:
myMethod(new String[] {"spades", "hearts"});
myMethod({"spades", "hearts"}); //won't compile!
Ответ 2
Нет, никакой разницы. Это просто синтаксический сахар. Arrays.asList(..)
создает дополнительный список.