Vc já sabe que pra declarar uma variável precisamos colocar seu tipo seguido pelo seu nome:
int a;
int b;
Opcionalmente, podemos declarar e inicializar a variável ao mesmo tempo:
int a = 123;
int b = 456;
Mas há uma forma de encurtar o código acima que é declarando as 2 variáveis na mesma linha:
int a = 123, b = 456;
O que eu quero te mostrar com isso é que quando o compilador vê um tipo seguido por um nome seguido por uma vírgula, ele entende que após esta vírgula virá a declaração de outra variável daquele mesmo tipo.
Diferente de linguagens como C onde os colchetes na declaração de um array vem depois de seu nome…
int c[15];
Em Java, por convenção, colocamos os colchetes após o tipo e antes do nome, embora o “estilo C” de declarar arrays seja suportado.
int[] c;
Sempre prefira seguir as convenções.
Contudo, há uma situação em que a posição dos colchetes não é opcional: Quando vc quer declarar uma varável comum e um array na mesma linha.
int a = 123, b[] = new int[15];
Se vc fizer isso:
int[] a, b;
O compilador vai entender que vc quer criar um array chamado a e um array chamado b.
Escrevi tudo isso só pra te responder que:
Vc não consegue fazer isso porque o compilador pensa que vc está redeclarando o array a.
O trecho abaixo é possível, mas já foge da proposta do exercício:
for (int i = 2, a[] = new int[15]; i < a.length; i++) {