Array Java (com exemplos)

Neste tutorial, aprenderemos a trabalhar com arrays em Java. Aprenderemos a declarar, inicializar e acessar os elementos do array com a ajuda de exemplos.

Na programação de computadores, um array é uma coleção de tipos semelhantes de dados. Por exemplo, se quisermos armazenar os nomes de 100 pessoas, podemos criar um array do tipo string que pode armazenar 100 nomes.

 String() array = new String(100);

O número de valores no array Java é fixo. Ou seja, a matriz acima não pode armazenar mais de 100 elementos.

Como declarar um array em Java?

Em Java, aqui está como podemos declarar um array.

 dataType() arrayName;
  • dataType - pode ser tipos de dados primitivos, como int, char, double, byte, etc. ou objetos Java
  • arrayName - é um identificador

Por exemplo,

 double() data;

Aqui, os dados são uma matriz que pode conter valores do tipo double.

Mas, quantos elementos podem conter isso?

Boa pergunta! Para definir o número de elementos que um array pode conter, temos que alocar memória para o array em Java. Por exemplo,

 // declare an array double() data; // allocate memory data = new Double(10);

Aqui, a matriz pode armazenar 10 elementos. Também podemos dizer que o tamanho ou comprimento da matriz é 10.

Em Java, podemos declarar e alocar a memória de um array em uma única instrução. Por exemplo,

 double() data = new double(10);

Como inicializar matrizes em Java?

Em Java, podemos inicializar arrays durante a declaração. Por exemplo,

 //declare and initialize and array int() age = (12, 4, 5, 2, 5);

Aqui, criamos um array denominado age e o inicializamos com os valores dentro das chaves.

Observe que não fornecemos o tamanho da matriz. Nesse caso, o compilador Java especifica automaticamente o tamanho contando o número de elementos na matriz (ou seja, 5).

No array Java, cada local de memória está associado a um número. O número é conhecido como índice de matriz. Também podemos inicializar arrays em Java, usando o número do índice. Por exemplo,

 // declare an array int() age = new int(5); // initialize array age(0) = 12; age(1) = 4; age(2) = 5;… 
Inicialização de Arrays Java

Nota :

  • Os índices da matriz sempre começam em 0. Ou seja, o primeiro elemento de uma matriz está no índice 0.
  • Se o tamanho de uma matriz for n, o último elemento da matriz estará no índice n-1.

Como acessar os elementos de um array em Java?

Podemos acessar o elemento de uma matriz usando o número do índice. Aqui está a sintaxe para acessar os elementos de uma matriz,

 // access array elements array(index)

Vamos ver um exemplo de acesso a elementos de matriz usando números de índice.

Exemplo: Access Array Elements

 class Main ( public static void main(String() args) ( // create an array int() age = (12, 4, 5, 2, 5); // access each array elements System.out.println("Accessing Elements of Array:"); System.out.println("First Element: " + age(0)); System.out.println("Second Element: " + age(1)); System.out.println("Third Element: " + age(2)); System.out.println("Fourth Element: " + age(3)); System.out.println("Fifth Element: " + age(4)); ) )

Resultado

 Acessando os Elementos da Matriz: Primeiro Elemento: 12 Segundo Elemento: 4 Terceiro Elemento: 5 Quarto Elemento: 2 Quinto Elemento: 5

No exemplo acima, observe que estamos usando o número do índice para acessar cada elemento do array.

Podemos usar loops para acessar todos os elementos do array de uma vez.

Loop por meio de elementos de array

Em Java, também podemos percorrer cada elemento da matriz. Por exemplo,

Exemplo: Usando For Loop

 class Main ( public static void main(String() args) ( // create an array int() age = (12, 4, 5); // loop through the array // using for loop System.out.println("Using for Loop:"); for(int i = 0; i < age.length; i++) ( System.out.println(age(i)); ) ) )

Resultado

 Usando para Loop: 12 4 5

No exemplo acima, estamos usando o Loop for em Java para iterar por cada elemento do array. Observe a expressão dentro do loop,

 age.length

Aqui, estamos usando a lengthpropriedade do array para obter o tamanho do array.

We can also use the for-each loop to iterate through the elements of an array. For example,

Example: Using the for-each Loop

 class Main ( public static void main(String() args) ( // create an array int() age = (12, 4, 5); // loop through the array // using for loop System.out.println("Using for-each Loop:"); for(int a : age) ( System.out.println(a); ) ) )

Output

 Using for-each Loop: 12 4 5

Example: Compute Sum and Average of Array Elements

 class Main ( public static void main(String() args) ( int() numbers = (2, -9, 0, 5, 12, -25, 22, 9, 8, 12); int sum = 0; Double average; // access all elements using for each loop // add each element in sum for (int number: numbers) ( sum += number; ) // get the total number of elements int arrayLength = numbers.length; // calculate the average // convert the average from int to double average = ((double)sum / (double)arrayLength); System.out.println("Sum = " + sum); System.out.println("Average = " + average); ) )

Output:

 Sum = 36 Average = 3.6

In the above example, we have created an array of named numbers. We have used the for… each loop to access each element of the array.

Inside the loop, we are calculating the sum of each element. Notice the line,

 int arrayLength = number.length;

Here, we are using the length attribute of the array to calculate the size of the array. We then calculate the average using:

 average = ((double)sum / (double)arrayLength);

As you can see, we are converting the int value into double. This is called type casting in Java. To learn more about typecasting, visit Java Type Casting.

Multidimensional Arrays

Os arrays que mencionamos até agora são chamados de arrays unidimensionais. No entanto, podemos declarar arrays multidimensionais em Java.

Uma matriz multidimensional é uma matriz de matrizes. Ou seja, cada elemento de uma matriz multidimensional é uma matriz em si. Por exemplo,

 double()() matrix = ((1.2, 4.3, 4.0), (4.1, -1.1) );

Aqui, criamos um array multidimensional denominado matrix. É uma matriz bidimensional. Para saber mais, visite o array multidimensional Java.

Leituras Recomendadas

  • Java Copy Array
  • Programa Java para imprimir um array
  • Programa Java para concatenar duas matrizes
  • Java ArrayList para Array e Array para ArrayList
  • Java Dynamic Array

Artigos interessantes...