Inicializando matriz com valores - devo explicitamente instanciar a classe ou não?
Muitas vezes vejo matrizes sendo inicializadas assim:
String[] array = new String[] { "foo", "bar", "baz" };
Mas lendo oFundamentos da Linguagem - Matrizes mostra que a sintaxe curta não requer explicitamente o instanciamento do construtor:
Como alternativa, você pode usar a sintaxe de atalho para criar e inicializar uma matriz:
int[] anArray = {
100, 200, 300,
400, 500, 600,
700, 800, 900, 1000
};
Então, assumindo esses dois métodos de inicialização:
String[] array = new String[] { "foo", "bar", "baz" };
String[] array2 = { "foo", "bar", "baz" };
Existe alguma diferença entre estes? Ambos parecem funcionar da mesma forma, nesse caso devo supor que o segundo implicitamente chama onew String[]
e o primeiro é apenas um modo mais detalhado, ou existe mais nos bastidores?
Começando com Java desculpe se isso é muito estúpido de uma pergunta, mas eu não consegui encontrar nada sobre isso na web.