Java vetores e matrizes

armandodaniel777 5,020 views 14 slides Aug 28, 2013
Slide 1
Slide 1 of 14
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14

About This Presentation

No description available for this slideshow.


Slide Content

Curso de Java
by Antonio Rodrigues Carvalho Neto

Matrizes

Matrizes
Em algumas situações épreciso guardar
diversas informações de um mesmo tipo no
Java.

Imagine ter que guardar informações como os
titulos de filmes de uma coleção de DVD, ou os
nomes de ouvintes que estão na platéia de um
teatro.

Atéo momento deveriamos criar uma váriavel
específica para guardar cada umas destas
informações, uma para cada pessoa, uma para
cada título.

Matrizes
Para evitar a manutenção de todas estas
variáveis, as linguagens de programação
oferecem um recurso chamado de Vetores
ou Matrizes.

Onde écriado apenas uma variável
contendo diversas células dentro dela, e
as informações são gravadas ou lidas
dessas células


Vetor

Matriz 2D

Matriz 3D
Vetores e Matrizes

Vetor
No caso dos títulos de DVDs podemos criar uma
única variável chamada dvdsque seria um
vetor com 7 células suficientes para conter
todos os títulos na minha coleção
Green Mile
Pay it forward
A.I.
The Last Samurai
Brave Heart
Patch Adams
0 1 5 6 74 3 2
String dvd1 = “Green mile”;
String dvd2 = “Pay it forward”;
String dvd3 = “A.I.”;
String dvd4 = “The Last Samurai”;
String dvd5 = “Brave Heart”;
String dvd6 = “Patch Adams”;
Uma única variável dvds[]

Matriz
No caso da platéia do teatro, podemos criar
uma única variável do tipo matriz com duas
dimensões para guardar os nomes de cada
indivíduo.
John
<Available>
Bart
Hommer
William
Paul
Jessica Alfred
Sara
<Available>
Richard
Maicon
<Available>
Antonio
Silvana
0 1 2 3 4
0
1
2

--Colunas --

----Linhas ----
0 1 2 3 4
0
1
2

----Colunas ----

----Linhas ----

Matrizes e Vetores
O acesso a cada uma dessas células éfeito pelo índice.
Por exemplo no caso do título para gravar o nome do
primeiro e do segundo título de DVD na variável dvds
usamos a seguinte sintaxe :
dvds[0] = “Green Mile”;
dvds[1] = “Pay it forward”;

E se quisermos acessar a informação posteriormente
para imprimir na tela, basta chamar a variável com o
índice desejado.
System.out.println( dvds[1]); // Pay it forward
System.out.println( dvds[3]); // The Last Samurai
System.out.println( dvds[5]); // null


Sintaxe de Declaraçãode Vetores e Matrizes
<tipo> [ ] <var1>[, <var2> ..<varn>];
Ex:
int [] a, b;
Ex:
int [] [] c, d; <tipo> <var1>[];
Ex:
int a[], b;
Ex:
int c, d[][];
Ex:
String j[]; <tipo> <var1>[] = { <elementos>};
Ex:
int a[] = { 1, 2, 3};
Ex:
int d[][] = { {1, 2, 3}, { 9, 7, 8}, { 2, 3, 5} };
Matriz e Vetores
Declaração
seguida de
inicialização


Sintaxe de Inicializaçãode Vetores e
Matrizes
<var> = new <tipo da variável | classe> [ tam anho ];
Ex:
a = new int [10];
Ex:
d = new int [10][5];
Ex:
j = new String [7];
Matriz e Vetores

Memória do Computador usada
pelo Java
dvds[]
Memória do Computador usada
pelo Java
Declaração
String dvds[];
Inicialização
dvds = new String[8];
0 1 5 6 74 3 2
dvds[8]

A declaração serve para reservar o espaço na memória do Java.

Quando o vetor ou matriz é inicializado o java divid e este espaço da
memória em celulas Matriz e Vetores

Exemplo
Para preencher um vetor com o exemplo
dos títulos de DVD o programa ficaria
como o código abaixo :
String [] dvds = new String[8];
dvds[0] = “Green mile”;
dvds[1] =“Pay it forward”;
dvds[2] =“A.I.”;
dvds[3] =“The Last Samurai”;
dvds[4] =“Brave Heart”;
dvds[6] =“Patch Adams”;

Exercício
Faça um programa que solicite 20 números ao
usuário, armazene-os em um vetor e depois
imprima na tela os vinte números juntamente
com a soma e sua média aritmética

Desafio : Modifique o programa anterior para
mostrar os números na tela de forma ordenada.

Exercício
Faça um programa que armazene um tabuleiro
de Sudoku e preencha este tabuleiro com 10
números aleatoriamente.

Faça também uma rotina para que o usuário
possa colocar novos números neste tabuleiro,
indicando qual linha, coluna e o número a ser
colocado.

Desafio : Modifique o programa anterior para
que ele valide se o número pode ser colocado
naquela posição conforme as regras do Sudoku
Tags