Ar

Arrays em Java

24 exercícios

Sobre Arrays

Em Java, um array (ou vetor) é uma forma de armazenar vários valores do mesmo tipo em uma única estrutura. Diferente de outras estruturas de dados, os arrays têm um tamanho fixo depois de criados. Você pode atribuir elementos a um array ou recuperá-los dele usando um índice. Os arrays em Java usam indexação a partir do zero: o índice do primeiro elemento é 0, o do segundo é 1, e assim por diante.

Esta é a sintaxe padrão para inicializar um array:

type[] variableName = new type[size];

O type é o tipo dos elementos do array, que pode ser um tipo primitivo (por exemplo, int) ou uma classe (por exemplo, String).

O size é o número de elementos que esse array vai conter (e isso não pode ser alterado depois). Depois de criar o array, os elementos são inicializados com seus valores padrão (normalmente 0, false ou null).

// Declare array with explicit size (size is 2)
int[] twoInts = new int[2];

Você também pode definir arrays usando uma notação abreviada que permite criar o array e definir seus valores ao mesmo tempo:

// Two equivalent ways to declare and initialize an array (size is 3)
int[] threeIntsV1 = new int[] { 4, 9, 7 };
int[] threeIntsV2 = { 4, 9, 7 };

Como o compilador agora consegue saber quantos elementos o array terá, o comprimento pode ser omitido.

Os elementos de um array podem ser atribuídos e acessados usando uma notação de índice entre colchetes:

// Assign second element by index
twoInts[1] = 8;

// Retrieve the second element by index and assign to the int element
int secondElement = twoInts[1];

Acessar um índice que está fora dos índices válidos do array resulta em uma IndexOutOfBoundsException.

Os arrays podem ser manipulados chamando os métodos ou as propriedades de uma instância de array, ou usando os métodos estáticos definidos na classe Arrays (normalmente usados apenas em código genérico). A propriedade length guarda o comprimento de um array. Você pode acessá-la assim:

int arrayLength = someArray.length;

O Java também oferece uma classe utilitária bem útil, a java.util.Arrays, que tem vários métodos úteis relacionados a arrays (por exemplo, Arrays.equals).

O Java também dá suporte a arrays multidimensionais, como int[][] arr = new int[3][4];, o que pode ser muito útil.

O fato de um array também ser uma coleção significa que, além de acessar valores por índice, você pode iterar sobre todos os seus valores usando um laço for-each:

char[] vowels = { 'a', 'e', 'i', 'o', 'u' };

for(char vowel: vowels) {
    // Output the vowel
    System.out.print(vowel);
}

// => aeiou

Se você quiser mais controle sobre quais valores percorrer, pode usar um laço for:

char[] vowels = { 'a', 'e', 'i', 'o', 'u' };

for (int i = 0; i < 3; i++) {
    // Output the vowel
    System.out.print(vowels[i]);
}

// => aei
Editar via GitHub O link abre em uma nova janela ou aba

Aprenda Arrays