Arrays
Um array é um conjunto de variáveis do mesmo tipo, referenciadas por um nome comum.
Em Java, os arrays podem ter uma ou mais dimensões, sendo o array unidimensional o mais popular.
Arrays são usados para vários fins, pois oferecem um meio conveniente de agrupar variáveis relacionadas.
Exemplos de uso incluem armazenamento de temperaturas diárias, médias de preços de ações e coleções de livros.
A principal vantagem de um array é organizar dados de forma fácil de tratar e percorrer, como calcular a renda média de um grupo de famílias.
Arrays permitem fácil classificação de dados.
Em Java, arrays são implementados como objetos, o que traz muitas vantagens, incluindo a coleta de lixo para arrays não usados.
Arrays unidimensionais
Um array unidimensional é uma lista de variáveis relacionadas, comum em programação.
Exemplos de uso incluem armazenar números de conta de usuários e médias de rebatidas de um time de baseball.
Para declarar um array unidimensional em Java:
tipo nome-array[] = new tipo[tamanho];
tipo declara o tipo de elemento do array.
tamanho determina o número de elementos do array.
Arrays são implementados como objetos em Java, criando-se em duas etapas:
Declarar uma variável de referência de array.
Alocar memória para o array com o operador new.
Exemplo de criação de array:
int sample[] = new int[10];
sample referencia a memória alocada para 10 elementos do tipo int.
A declaração pode ser dividida em duas:
int sample[];
sample = new int[10];
Um elemento individual de um array é acessado usando um índice.
Em Java, o índice do primeiro elemento é zero.
sample tem índices de 0 a 9, sendo sample[0] o primeiro elemento e sample[9] o último.
Saída:
This is sample[0]: 0
This is sample[1]: 1
This is sample[2]: 2
This is sample[3]: 3
This is sample[4]: 4
This is sample[5]: 5
This is sample[6]: 6
This is sample[7]: 7
This is sample[8]: 8
This is sample[9]: 9Arrays são comuns em programação, permitindo lidar facilmente com grandes quantidades de variáveis relacionadas.
Exemplo de uso: encontrar o valor mínimo e máximo em um array nums utilizando um laço for.
Saída:
min and max: -978 100123
No programa anterior, o array nums foi preenchido manualmente com 10 instruções de atribuição separadas.
Embora correto, há uma maneira mais fácil: inicializar o array ao criá-lo.
Forma geral de inicialização de um array unidimensional:
type array-name[] = { val1, val2, val3, ... , valN };
Os valores iniciais são especificados entre {} e atribuídos em ordem de índice.
Java aloca automaticamente um array grande o suficiente para conter os inicializadores, sem a necessidade do operador new.
Exemplo: uma maneira melhor de escrever o programa MinMax é inicializando o array dessa forma.
Em Java, os limites de um array são rigorosamente impostos.
Acessar índices fora dos limites do array resulta em um erro de tempo de execução.
Para confirmar isso, pode-se testar um programa que intencionalmente excede os limites de um array.
Assim que i alcançar 10, uma ArrayIndexOutOfBoundsException será gerada e o programa será encerrado.