Matrizes Java

Aqui está uma descrição de Java Arrays com a esperança de ajudá-lo a aprender sobre eles.

As matrizes Java contêm elementos com tipos de dados semelhantes.

Matrizes Java

Os elementos de uma matriz também são armazenados em um local de memória contíguo. Basicamente, é uma estrutura de dados para armazenar elementos semelhantes.

Uma matriz Java pode conter apenas um número fixo de elementos.

Matrizes em Java

O objetivo de Java Arrays é armazenar vários valores em uma variável , em vez de declarar variáveis ​​separadas para cada valor.

Arrays são declarados definindo o tipo de variável com colchetes:

String[ ] country_names;

Uma matriz de strings agora foi declarada como uma variável. Usando um array literal, podemos inserir valores nele – coloque os valores entre chaves , separados por vírgula:

String [ ] country_names = {"United Kingdom", "United States of America", "Berlin", "Finland"};

Matrizes de números inteiros podem ser criadas da seguinte maneira:

int [ ] even_Num = {0,2,4,6,8,10};


Os elementos da matriz podem ser acessados

O número de índice de um elemento de array é usado para acessar um elemento de um array Java .

De acordo com esta declaração, sports_cars tem o seguinte valor como primeiro elemento:

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
public class Main {
public static void main(String[] args) {
String[] sports_cars = {"Lamborghini", "Bugatti", "Ferrari", " Porsche"};
System.out.println(sports_cars[1]);
// The Second Element of the sports_car array is "Bugatti" as it has index number = 1
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Lembrete: O índice de um array começa em zero: [ 0 ] que contém o primeiro elemento. Da mesma forma, [ 1 ] é o segundo elemento e assim por diante.

Assim, para imprimir o nome de “Atlanta Hawks” usamos o número de índice 3.

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
public class Main {
public static void main(String[] args) {
String[] NBA_teams = {"Boston Celtics", "Brooklyn Nets", "Detroit Pistons", "Atlanta Hawks"};
System.out.println("My favorite team is: "+NBA_teams[3]);
// We used the index number 3 to access the name of "Atlanta Hawks".
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Mudanças nos elementos da matriz

Consulte o número do índice para alterar o valor de um elemento específico:

Exemplo

sports_cars[2] = "Aston Martin";

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
public class Main {
public static void main(String[] args) {
String[] sports_cars = {"Lamborghini", "Bugatti", "Ferrari", " Porsche"};
sports_cars[2] = "Aston Martin";
System.out.println(sports_cars[2]); // The value at index [2]= Ferrari, has now been updated to "Aston Martin"
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Também podemos alterar o valor de vários elementos, conforme mostrado abaixo:

Programming_Languages[0] = “Linguagem de programação Java”;
Programming_Languages[1] = “Linguagem de programação Python”;
Programming_Languages[2] = “Linguagem de programação C”;
Programming_Languages[3] = “Linguagem de programação C sharp”;

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public class Main {
public static void main(String[] args) {
String[] programming_Languages = {"Java", "Python", "C", "C#"};
programming_Languages[0] = "Java Programming language";
programming_Languages[1] = "Python Programming language";
programming_Languages[2] = "C Programming language";
programming_Languages[3] = "C sharp Programming language";
for(int mrx=0;mrx<=3;mrx++) {
System.out.println(programming_Languages[mrx]);
}
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Comprimento da matriz

Ao contrário de C / C++ , podemos obter o comprimento de uma matriz usando o membro length. O operador sizeof é necessário em C/C++.

A propriedade length de um array informa quantos elementos ele possui:

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
public class Main {
public static void main(String[] args) {
String[] sports_cars = {"Lamborghini", "Bugatti", "Ferrari", " Porsche"};
System.out.println(sports_cars.length);
}
// Output returns 4 which is the length of the above given array.
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
public class Main {
public static void main(String[] args) {
String[] MLB_team_players = {"Cory Abbott", "CJ Abrams","Albert Abreu","Bryan Abreu","José Abreu","Willy Adames","Ehire Adrianza","Ryan Aguilar","Sergio Alcántara"};
System.out.println(MLB_team_players.length);
}
// Return : Returns 9 as there are 9 elements in this array.
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Percorrer um Array

Os elementos da matriz podem ser repetidos usando o loop for , em que a propriedade length especifica quantas vezes o loop deve ser executado.

A seguir está um exemplo que gera todos os elementos do array sports_cars :

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class Main {
public static void main(String[] args) {
String[] sports_cars = {"Lamborghini", "Bugatti", "Ferrari", "Porsche"};
for(int mrx=0; mrx < sports_cars.length; mrx++){
System.out.println(sports_cars[mrx]);
}
}
// Output :
// Lamborghini
//Bugatti
//Ferrari
//Porsche
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public class Main {
public static void main(String[] args) {
String[] pillars_Of_OOP = {"Abstraction","Encapsulation","Inheritance","Polymorphism"};
for (int ample=0;ample <= 3;ample++){
System.out.println("Pillars Number "+ample+" : "+pillars_Of_OOP[ample]);
}
}
// Output:
// Pillars Number 0 : Abstraction
// Pillars Number 1 : Encapsulation
// Pillars Number 2 : Inheritance
// Pillars Number 3 : Polymorphism
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

For-Each loop através de uma matriz

O loop for-each é usado exclusivamente para percorrer os elementos do array :

Sintaxe:

for (type variable_name : arrayname) {
...
}

Usando um loop “ for-each ” , o exemplo a seguir gera todos os elementos no array sports_cars :

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
public class Main {
public static void main(String[] args) {
String[] sports_cars = {"Lamborghini", "Bugatti", "Ferrari", "Porsche"};
for(String mrx : sports_cars){
System.out.println(mrx);
}
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Exemplo de matrizes Java

Este exemplo pode ser lido assim: para cada elemento String (chamado mrx – como em index) em sport_cars , exiba o valor da variável mrx .

Ao comparar loops for com loops for-each , você descobrirá que o método for-each é mais fácil de escrever, não requer um contador ( propriedade length ) e é mais legível.

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public class Main {
public static void main(String[] args) {
String[] NFL_players = {"Tom Brady","Aaron Rodgers","Patrick Mahomes II","T. J. Watt","Deshaun Watson"};
for(String ample: NFL_players){
System.out.println(ample);
}
}
// Output:
// Tom Brady
// Aaron Rodgers
// Patrick Mahomes II
// T. J. Watt
// Deshaun Watson
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Matrizes multidimensionais:

Em Java Arrays , um array multidimensional é um array contendo mais de um array.

Uma matriz bidimensional é criada adicionando cada matriz dentro de sua própria chave :

Exemplo

int [ ][ ] my_Numbers = { {1, 2, 3, 4, 5}, { 6, 7,8, 9,10} };

Conforme discutimos em Java Arrays , my_Numbers é um array que contém dois arrays como seus elementos.

elementos de acesso

Para acessar os elementos da matriz my_Numbers, você deve especificar dois índices: um para a matriz e outro para seu elemento.

Aqui está um exemplo de acesso ao quarto elemento (7) da segunda matriz (2) de my_Numbers:

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
public class Main {
public static void main(String[] args) {
int[][] my_Numbers={{0,2,4,6,8,10},{1,3,5,7,9}};
System.out.println(my_Numbers[1][3]); // [1] represents the rows number2 as row number starts with 0, whereas [3] represents the index number of the element to be accessed
}
// Output =7
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Para imprimir um alfabeto “E” da matriz multidimensional, consulte o exemplo abaixo:

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
public class Main {
public static void main(String[] args) {
char[][] my_Alphabets={{'A','B','C','D','E'},{'a','b','c','d','e'}};
System.out.println(my_Alphabets[0][4]); // [0] represents the number of row, whereas [4] represents the element
}
// Output = E
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Os loops for dentro dos loops for também são úteis para obter os elementos de arrays bidimensionais (embora os índices ainda sejam necessários):

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public class Main {
public static void main(String[] args) {
int[][] my_Numbers={{0,2,4,6,8},{1,3,5,7,9}};
for(int rows=0; rows < 2; rows++){
for(int columns=0; columns < 5 ; columns++){
System.out.println(my_Numbers[rows][columns]);
}
}
// Output = 0,2,4,6,8,1,3,5,7,9
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
public class Main {
public static void main(String[] args) {
char[][] my_Alphabets={{'A','B','C','D','E'},{'a','b','c','d','e'}};
for(int mrx=0; mrx < 2; mrx++){
for(int ample=0; ample < 5 ; ample++){
System.out.println(my_Alphabets[mrx][ample]);
}
}
// Output =
// A
// B
// C
// D
// E
// a
// b
// c
// d
// e
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Alterar valores de elementos

O valor de um elemento também pode ser alterado:

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
public class Main {
public static void main(String[] args) {
int[][] my_Numbers={{0,2,4,6,8,10},{1,3,5,7,9}};
my_Numbers[1][3]=14;
System.out.println(my_Numbers[1][3]); // value at indexes has been modified to 14 from 7;
}
// Output =14
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class Main {
public static void main(String[] args) {
int[][] mrx_Nums={{5,10,15,20,25,30},{10,20,30,40,50}};
System.out.println("Previous value of 3rd element of row 2: "+mrx_Nums[1][2]);
mrx_Nums[1][2]=35;
System.out.println("Modified value of 3rd element of row 2: "+mrx_Nums[1][2]); // value at indexes has been modified to 30 from 35;
}
// Output :
// Previous value of 3rd element of row 2: 30
// Modified value of 3rd element of row 2: 35
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Vantagens dos Arrays Java

A otimização do código garante que os dados possam ser recuperados ou classificados com eficiência e que o código seja otimizado.

Os dados podem ser acessados ​​aleatoriamente em qualquer posição do índice.

Desvantagens dos Arrays Java

Os elementos da matriz só podem ser armazenados em tamanhos fixos. Em tempo de execução, ele não aumenta de tamanho. Usando a estrutura de coleta do Java, esse problema pode ser resolvido automaticamente.

 

 

Nós valorizamos o seu feedback.
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0

Assine a nossa newsletter
Digite seu e-mail para receber um resumo semanal de nossos melhores posts. Saber mais!
ícone