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.

Um array unidimensional de dez posições - arrays em Java

Representação de um array unidimensional de dez posições

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.

Próximo: Como acessar os elementos de um array em Java

Sobre Fábio dos Reis (1256 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 25 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Unix, Linux e Open Source em geral, adora Eletrônica e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

Escreva um comentário

Seu e-mail não será divulgado


*