Laboratório II
Mateus Raeder
Arrays unidimensionais
 Arrays unidimensionais são objetos que permitem ao programador
armazenar diversas variáveis do mesmo tipo
 Estas variáveis podem ser tanto tipos primitivos (int, char, ...) como
outros objetos
Array de “int” 
0
1
2
3
4
5
6
7
8
9
Array de “char” 
A
B
C
D
E
F
G
H
I
J
Ana
Rick
André
Rê
Sofia
Array de “Pessoa” 
Pedro João
Prof. Mateus Raeder – Laboratório II
Maria
José
Milton
Arrays bidimensionais
 A estrutura de arrays bidimensionais, também permite o armazenamento
de diversas variáveis, porém, com uma estrutura similar a uma matriz:
 Estas variáveis podem ser tanto tipos primitivos (int, char, ...) como outros
objetos
Prof. Mateus Raeder – Laboratório II
Arrays bidimensionais
Array bidimensional de int
1
4
8
0
67
9
1
8
7
8
0
23
1
12
0
0
1
55
5
4
86
6
8
10
9
0
67
23
19
7
23
9
12
4
1
132
4
Array bidimensional de boolean
true
true
true
false
true
true
true
true
false
false
true
false
true
true
true
true
8
0
2
Array bidimensional de Pessoa
Antonio
Luiz
Diego
Dover
Maycon Michele
Prof. Mateus Raeder – Laboratório II
Jefferson Karoline Leonardo Leonardo
Pedro
Rafael
Rovian
Shayane
Arrays bidimensionais
 Cada item do array bidimensional é chamado de elemento
 Os elementos de um array bidimensional são associados a uma posição
numérica (um par de valores)
“colunas”
do array
0
“linhas”
do array
1
0
1
2
Antonio
Diego
Dover
Luiz
Maycon Michele
3
4
5
6
Jefferson Karoline Leonardo Leonardo
Pedro
Rafael
Rovian
Shayane
2 linhas por 7 colunas
 Um array bidimensional pode ser visto como um array de arrays
Prof. Mateus Raeder – Laboratório II
Declarando arrays bidimensionais
 Arrays bidimensionais armazenam variáveis de um determinado tipo, e
sua declaração ocorre da mesma forma de uma variável “comum”,
porém utilizando um par de “[ ]” (colchetes) para a sua identificação.
int[][] valorTotal;
tipo do array
nome do array
ou
int valorTotal[][];
 Desta forma, arrays de qualquer tipo podem ser declarados:
char[][] charArray;
String[][] stringArray;
double[][] doubleArray;
float[][] floatArray;
Prof. Mateus Raeder – Laboratório II
boolean[][] booleanArray;
long[][] longArray;
byte[][] byteArray;
short[][] shortArray;
Declarando arrays bidimensionais
Exemplos:
int[][] tamanho; //declara um array de inteiro
double[][] nota; //declara um array de double
char[][] letra; //declara um array de char
Pessoa[][] p1; //declara um array de Pessoa
Carta[][] c1; //declara um array de Carta
Prof. Mateus Raeder – Laboratório II
Declarando e inicializando arrays bidimensionais
 Porém, declarar um array bidimensional não significa criá-lo efetivamente
para utilização.
 A declaração indica ao compilador que existe um array bidimansional de
determinado tipo e com determinado nome.
 Após a declaração, como fazer com que um array possa ser utilizado?
indicar a quantidade de elementos do array bidimansional
valorTotal = new int[10][2];
cria o array
Prof. Mateus Raeder – Laboratório II
número
de linhas
número
de colunas
Inicializando arrays bidimensionais
Exemplos:
int[][] tamanho = new int[4][4];
tamanho
int[]
double[][] nota = new double[3][3];
0 1 2
char[][] letra = new char[23][2];
Pessoa[][] p1 = new Pessoa[2][7];
Carta[][] c1 = new Carta[4][48];
Prof. Mateus Raeder – Laboratório II
0
1
2
3
3
Inicializando arrays bidimensionais
 É aconselhável inicializar os valores de cada elemento do array de
acordo com a necessitade/vontade, atribuindo valores para todos os seus
elementos:
valorTotal[0][0] = 26;
valorTotal[0][1] = 296;
valorTotal[0][2] = 11;
...
valorTotal[9][9] = 1997;
ou
for(int linha=0; linha<10; linha++)
for(int coluna=0; coluna<10; coluna++)
valorTotal[linha][coluna] = 0;
 Pode-se também declarar, criar e inicializar arrays diretamente, da
seguinte forma:
int[][] valorTotal = {{26, 296, 11}, {34, 58, 98}, {114, 754, 236}};
Prof. Mateus Raeder – Laboratório II
Inicializando arrays bidimensionais de Objetos
 Ao declarar e inicializar um array bidimensional de objetos, cada
posição comporta-se como uma variável normal, ou seja, deve ser
inicializada
Exemplo:
Pessoa[][] p = new Pessoa[2][7];
for(int linha=0; linha<2; linha++)
for(int coluna=0; coluna<7; coluna++)
p[linha][coluna] = new Pessoa();
Prof. Mateus Raeder – Laboratório II
Acessando elementos em arrays bidimensionais
 Os elementos do array bidimensionais são, então, acessados através de
suas posições numéricas, que são pares numéricos:
Array de String chamado pessoa
Antonio
Luiz
Diego
Dover
Maycon Michele
Jefferson Karoline Leonardo Leonardo
Pedro
Rafael
Rovian
Shayane
System.out.println(“Valor da primeira posição é = ”+pessoa[0][0]);
System.out.println(“Valor da última posição é = ”+pessoa[1][7]);
String aux = pessoa[1][2];
for(int linha=0; linha<2; linha++)
for(int coluna=0; coluna<7; coluna++)
System.out.println(“Posição [”+linha+”][+coluna+”] é ”+pessoa[linha][coluna]);
Prof. Mateus Raeder – Laboratório II
Acessando elementos em arrays bidimensionais
 Um array unidimensional possui a variável length, que retorna a
quantidade de elementos do array. Assim, sabemos a quantidade de
elementos do array.
for(int i=0; i<array.length; i++)
 Entretanto, como saber as dimensões de um array bidimensional?
 Como saber a quantidade de linhas?
 Como saber a quantidade de colunas?
Prof. Mateus Raeder – Laboratório II
Download

Arrays bidimensionais