Como criar Arrays em Java
Arrays em Java
Nesta lição vamos introduzir os arrays em Java. Um Array é uma estrutura de dados que armazena uma coleção sequencial de tamanho fixo de elementos do mesmo tipo.
Os arrays são usados para armazenar uma coleção de dados, porém é interessante pensar neles como sendo coleções de variáveis do mesmo tipo.
Para entender a teoria por trás dos arrays, não deixe de conferir nossas aulas sobre Arrays em Lógica de Programação.
Características dos Arrays em Java
Algumas características dos arrays em Java são listadas a seguir:
- Em Java, todos os arrays são alocados dinamicamente
- Uma variável array em Java pode ser declarada como qualquer outra variável, acrescentando colchetes [] após o tipo de dados declarado.
- Arrays são objetos em Java. Assim, podemos descobrir seu tamanho usando o atributo length do objeto.
- Os elementos em um array são indexados a partir de zero.
- Um array pode ter uma ou mais dimensões
- O tamanho de um array sempre deve ser um valor int, e nunca um long, short ou byte.
- Podemos usar arrays em Java como um campo estático, variável local ou ainda como parâmetros em métodos.
- Os tipos de array implementam as interfaces Cloneable e java.io.Serializable
- Um array pode conter tipos de dados primitivos ou ainda objetos de uma classe
Criando um array unidimensional: Vetor
Declaramos um array de uma dimensão (“vetor”) da seguinte forma:
tipo nomeArray[]; ou tipo[] nomeArray;
O tipo determina qual será o tipo de dados de todos os elementos que serão armazenados nas posições do array (estrutura homogênea).
Exemplo de declaração de array:
double[] salarios; double salarios[]; // Ambas as formas são válidas.
Neste exemplo, declaramos um array de nome salario e tipo double em um programa. Porém, neste ponto, nenhum array ainda existe de fato. Essa declaração apenas diz ao compilador que a variável salario irá armazenar um array do tipo double. Para que essa variável seja ligada ao array real, será necessário alocar um array usando o operador new, e atribuindo-o à variável salário.
Desta forma, quando um array é declarado, apenas uma referência de array é realmente criada. Para efetivamente alocar espaço na memória para o array, devemos proceder desta forma:
nomeArray = new tipoDado[tamanho];
Onde tamanho se refere ao número de elementos do array, e nomeArray é o nome da variável que será ligada ao array físico. Quando usamos o operador new devemos especificar o número de elementos que serão alocados no array.
Portanto, criar um array em Java é um processo em duas etapas: Declaramos uma variável do tipo desejado para o array, e então alocamos memória para efetivamente armazenar o array, atribuindo-a à variável criada.
Exemplo:
double[] salarios; // Declarar o array salarios = new double[50]; // Alocar memória para o array
Podemos ainda declarar a variável de referência, criar o array, e atribuir a referência do array à variável de uma só vez, como segue:
tipoDado[] variávelReferência = new tipoDado[tamanhoArray];
Em nosso exemplo:
double[] salarios = new double[50];
Assim, declaramos e criamos um array de 50 posições para armazenar dados do tipo double.
Os elementos do array alocados com o operador new são automaticamente inicializados com valores-padrão, a saber:
- zero para tipos numéricos
- falso para tipo boolean
- null para tipos de referência (incluindo String)
Array literal
Quando sabemos de antemão o tamanho do array e quais serão os valores que serão armazenados nas posições do array, podemos usar literais de array – ou seja, podemos atribuir esses valores diretamente na declaração do array, usando uma lista de inicialização. Para isso podemos usar a seguinte sintaxe:
tipoDado[] variávelReferência = {valor1, valor2, …, valorN};
Por exemplo, suponha um array de 5 posições do tipo inteiro, do qual sabemos de antemão de será necessário armazenar os números 5, 9, 12, 3 e 4. podemos declarar esse array da seguinte forma:
int[] numeros = { 5, 9, 12, 3, 4 };
Desta forma o array é criado, e suas cinco posições já serão preenchidas com os dados desejados. Neste caso, não é necessário usar o operador new para criar o array (exceto em versões muito antigas do Java).
Na segunda parte de nossas lições sobre arrays em Java veremos como acessar os elementos de um array unidimensional.
Cara admiro muito o seu trabalho vc me faz aprender demais.
Obrigado Elder, fico feliz com isso!