Arranjos, agregados uniformes de dados com acesso indexado, podem ser definidos para valores de tipos primitivos da linguagem Java ou para referências a objetos.
Assim como objetos, arranjos devem ser criados com o operador
new. A simples declaração da variável associada ao arranjo
não aloca o espaço para o armazenamento de seu conteúdo. Por exemplo,
a seguinte expressão cria uma variável array1
que é uma
referência para um arranjo de inteiros:
int array1[];
Para alocar o espaço necessário para armazenar até 100 valores
inteiros e associar esse espaço ao arranjo array1, é
preciso usar o operador new
:
array1 = new int[100];
É possível combinar, na mesma expressão, a declaração e a alocação de espaço associados a um arranjo:
int array1[] = new int[100];
Arranjos podem ser criados com a especificação de algum conteúdo:
int array2[] = {2, 4, 5, 7, 9, 11, 13};
O acesso a elementos individuais de um arranjo é especificado através de
um índice inteiro. O primeiro elemento do arranjo, assim como em C e C++, tem índice
0. Por exemplo, no caso do array2
definido acima,
int x = array2[3];
faz com que a variável x receba o valor 7, o conteúdo da quarta posição.
O acesso a elementos do arranjo além do último índice permitido -- por exemplo, uma referência ao elemento array2[7] -- gera um erro em tempo de execução (a exceção ArrayIndexOutOfBoundsException).
A dimensão de um arranjo pode ser obtida através do campo length, presente em todos os arranjos. Assim, a expressão
int y = array2.length;
faz com que y receba o valor 7, o número de elementos no arranjo.