SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Downloaden Sie, um offline zu lesen
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 dvds que seria um
vetor com 7 células suficientes para conter
todos os títulos na minha coleção
GreenMile
Payitforward
A.I.
TheLastSamurai
BraveHeart
PatchAdams
0 1 5 6 7432
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
JessicaAlfred
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ção de 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ção de Vetores e
Matrizes
<var> = new <tipo da variável | classe> [ tamanho ];
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 7432
dvds[8]
A declaração serve para reservar o espaço na memória do Java.
Quando o vetor ou matriz é inicializado o java divide 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

Weitere ähnliche Inhalte

Was ist angesagt?

Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)Leinylson Fontinele
 
Introdução ao Banco de dados - Prof. Daniel Brandão
Introdução ao Banco de dados - Prof. Daniel BrandãoIntrodução ao Banco de dados - Prof. Daniel Brandão
Introdução ao Banco de dados - Prof. Daniel BrandãoDaniel Brandão
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dadosvini_campos
 
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Leinylson Fontinele
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Daniel Brandão
 
Aula 1 - Programação 1
Aula 1 - Programação 1Aula 1 - Programação 1
Aula 1 - Programação 1Isaac Barros
 
Sql básico - Teoria e prática: Um grande resumo
Sql básico - Teoria e prática: Um grande resumoSql básico - Teoria e prática: Um grande resumo
Sql básico - Teoria e prática: Um grande resumoHelder Lopes
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetosCleyton Ferrari
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POODaniel Brandão
 
Lista de exercícios em portugol
Lista de exercícios em portugolLista de exercícios em portugol
Lista de exercícios em portugolGabriel Faustino
 
Treinamento de SQL Básico
Treinamento de SQL BásicoTreinamento de SQL Básico
Treinamento de SQL BásicoIgor Alves
 
06 Modelagem de banco de dados: Modelo Lógico
06  Modelagem de banco de dados: Modelo Lógico06  Modelagem de banco de dados: Modelo Lógico
06 Modelagem de banco de dados: Modelo LógicoCentro Paula Souza
 
Aula 09 - Memórias do Computador
Aula 09 - Memórias do ComputadorAula 09 - Memórias do Computador
Aula 09 - Memórias do ComputadorSuzana Viana Mota
 
Linguagem de programação
Linguagem de programação Linguagem de programação
Linguagem de programação Marcos Gregorio
 
Estrutura de Dados - Aula 03 - Ponteiros e Funções
Estrutura de Dados - Aula 03 - Ponteiros e FunçõesEstrutura de Dados - Aula 03 - Ponteiros e Funções
Estrutura de Dados - Aula 03 - Ponteiros e FunçõesLeinylson Fontinele
 
Banco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DERBanco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DERRangel Javier
 

Was ist angesagt? (20)

Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
 
Introdução ao Banco de dados - Prof. Daniel Brandão
Introdução ao Banco de dados - Prof. Daniel BrandãoIntrodução ao Banco de dados - Prof. Daniel Brandão
Introdução ao Banco de dados - Prof. Daniel Brandão
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dados
 
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)
 
Modelagem de dados
Modelagem de dadosModelagem de dados
Modelagem de dados
 
Aula 1 - Programação 1
Aula 1 - Programação 1Aula 1 - Programação 1
Aula 1 - Programação 1
 
Sql básico - Teoria e prática: Um grande resumo
Sql básico - Teoria e prática: Um grande resumoSql básico - Teoria e prática: Um grande resumo
Sql básico - Teoria e prática: Um grande resumo
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
 
Lista de exercícios em portugol
Lista de exercícios em portugolLista de exercícios em portugol
Lista de exercícios em portugol
 
Treinamento de SQL Básico
Treinamento de SQL BásicoTreinamento de SQL Básico
Treinamento de SQL Básico
 
06 Modelagem de banco de dados: Modelo Lógico
06  Modelagem de banco de dados: Modelo Lógico06  Modelagem de banco de dados: Modelo Lógico
06 Modelagem de banco de dados: Modelo Lógico
 
Aula 09 - Memórias do Computador
Aula 09 - Memórias do ComputadorAula 09 - Memórias do Computador
Aula 09 - Memórias do Computador
 
Linguagem de programação
Linguagem de programação Linguagem de programação
Linguagem de programação
 
Estrutura de Dados - Aula 03 - Ponteiros e Funções
Estrutura de Dados - Aula 03 - Ponteiros e FunçõesEstrutura de Dados - Aula 03 - Ponteiros e Funções
Estrutura de Dados - Aula 03 - Ponteiros e Funções
 
Banco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DERBanco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DER
 
Algoritmo 06 - Array e Matrizes
Algoritmo 06 - Array e MatrizesAlgoritmo 06 - Array e Matrizes
Algoritmo 06 - Array e Matrizes
 
JAVA - Orientação a Objetos
JAVA - Orientação a ObjetosJAVA - Orientação a Objetos
JAVA - Orientação a Objetos
 
Aula 4 banco de dados
Aula 4   banco de dados Aula 4   banco de dados
Aula 4 banco de dados
 

Andere mochten auch

Java orientação a objetos (introdução)
Java   orientação a objetos (introdução)Java   orientação a objetos (introdução)
Java orientação a objetos (introdução)Armando Daniel
 
[Curso Java Basico] Exercicios Aula 20
[Curso Java Basico] Exercicios Aula 20[Curso Java Basico] Exercicios Aula 20
[Curso Java Basico] Exercicios Aula 20Loiane Groner
 
Curso Básico de Java - Aula 3
Curso Básico de Java - Aula 3Curso Básico de Java - Aula 3
Curso Básico de Java - Aula 3PeslPinguim
 
Curso Básico de Java - Aula 7
Curso Básico de Java - Aula 7Curso Básico de Java - Aula 7
Curso Básico de Java - Aula 7PeslPinguim
 
Condicional 02 Pascal Exercicio
Condicional 02 Pascal ExercicioCondicional 02 Pascal Exercicio
Condicional 02 Pascal ExercicioMarcus Vinicius
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosRegis Magalhães
 
Conceitos Básicos de OO e Java
Conceitos Básicos de OO e JavaConceitos Básicos de OO e Java
Conceitos Básicos de OO e JavaCharles Jungbeck
 
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...Adriano Teixeira de Souza
 
Java recursos avançados - streams
Java   recursos avançados - streamsJava   recursos avançados - streams
Java recursos avançados - streamsArmando Daniel
 
Java introdução ao eclipse
Java   introdução ao eclipseJava   introdução ao eclipse
Java introdução ao eclipseArmando Daniel
 
Java recursos avançados - multithreading
Java   recursos avançados - multithreadingJava   recursos avançados - multithreading
Java recursos avançados - multithreadingArmando Daniel
 

Andere mochten auch (20)

JAVA - Matrizes
JAVA - MatrizesJAVA - Matrizes
JAVA - Matrizes
 
Java orientação a objetos (introdução)
Java   orientação a objetos (introdução)Java   orientação a objetos (introdução)
Java orientação a objetos (introdução)
 
[Curso Java Basico] Exercicios Aula 20
[Curso Java Basico] Exercicios Aula 20[Curso Java Basico] Exercicios Aula 20
[Curso Java Basico] Exercicios Aula 20
 
java
javajava
java
 
Curso Básico de Java - Aula 3
Curso Básico de Java - Aula 3Curso Básico de Java - Aula 3
Curso Básico de Java - Aula 3
 
Vetores e matrizes
Vetores e matrizesVetores e matrizes
Vetores e matrizes
 
Curso Básico de Java - Aula 7
Curso Básico de Java - Aula 7Curso Básico de Java - Aula 7
Curso Básico de Java - Aula 7
 
JAVA - Vetores
JAVA - VetoresJAVA - Vetores
JAVA - Vetores
 
Condicional 02 Pascal Exercicio
Condicional 02 Pascal ExercicioCondicional 02 Pascal Exercicio
Condicional 02 Pascal Exercicio
 
Trabalho vetores
Trabalho vetoresTrabalho vetores
Trabalho vetores
 
Apostila Java2D (correta)
Apostila Java2D (correta)Apostila Java2D (correta)
Apostila Java2D (correta)
 
POO - 14 - Vetores
POO - 14 - VetoresPOO - 14 - Vetores
POO - 14 - Vetores
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 
Conceitos Básicos de OO e Java
Conceitos Básicos de OO e JavaConceitos Básicos de OO e Java
Conceitos Básicos de OO e Java
 
Java code conventions
Java code conventionsJava code conventions
Java code conventions
 
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
 
Java recursos avançados - streams
Java   recursos avançados - streamsJava   recursos avançados - streams
Java recursos avançados - streams
 
Java introdução ao eclipse
Java   introdução ao eclipseJava   introdução ao eclipse
Java introdução ao eclipse
 
Java recursos avançados - multithreading
Java   recursos avançados - multithreadingJava   recursos avançados - multithreading
Java recursos avançados - multithreading
 
Programação aula002
Programação aula002Programação aula002
Programação aula002
 

Ähnlich wie Java Vetores e Matrizes

ITA - CE-235 - CE-230 - Apresentação Final - SETRAIF - DCN
ITA - CE-235 - CE-230 - Apresentação Final - SETRAIF - DCNITA - CE-235 - CE-230 - Apresentação Final - SETRAIF - DCN
ITA - CE-235 - CE-230 - Apresentação Final - SETRAIF - DCNJefferson Andrade
 
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...PotiLivre Sobrenome
 
Tutorial de econometria espacial utilizando o stata
Tutorial de econometria espacial utilizando o stataTutorial de econometria espacial utilizando o stata
Tutorial de econometria espacial utilizando o stataRicardo Schuch
 
Certificação Digital - Aula1 Exercícios
Certificação Digital - Aula1 ExercíciosCertificação Digital - Aula1 Exercícios
Certificação Digital - Aula1 ExercíciosLeandro Rezende
 

Ähnlich wie Java Vetores e Matrizes (8)

Inpe
InpeInpe
Inpe
 
ITA - CE-235 - CE-230 - Apresentação Final - SETRAIF - DCN
ITA - CE-235 - CE-230 - Apresentação Final - SETRAIF - DCNITA - CE-235 - CE-230 - Apresentação Final - SETRAIF - DCN
ITA - CE-235 - CE-230 - Apresentação Final - SETRAIF - DCN
 
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
 
Tutorial de econometria espacial utilizando o stata
Tutorial de econometria espacial utilizando o stataTutorial de econometria espacial utilizando o stata
Tutorial de econometria espacial utilizando o stata
 
Certificação Digital - Aula1 Exercícios
Certificação Digital - Aula1 ExercíciosCertificação Digital - Aula1 Exercícios
Certificação Digital - Aula1 Exercícios
 
Fundamentos de JDBC
Fundamentos de JDBCFundamentos de JDBC
Fundamentos de JDBC
 
OpenSolaris a Céu Aberto
OpenSolaris a Céu AbertoOpenSolaris a Céu Aberto
OpenSolaris a Céu Aberto
 
Código Limpo
Código LimpoCódigo Limpo
Código Limpo
 

Mehr von Armando Daniel

Java recursos avançados - socket connection
Java   recursos avançados - socket connectionJava   recursos avançados - socket connection
Java recursos avançados - socket connectionArmando Daniel
 
Java recursos avançados - filters
Java   recursos avançados - filtersJava   recursos avançados - filters
Java recursos avançados - filtersArmando Daniel
 
Java orientação a objetos (variaveis de instancia e metodos)
Java   orientação a objetos (variaveis de instancia e metodos)Java   orientação a objetos (variaveis de instancia e metodos)
Java orientação a objetos (variaveis de instancia e metodos)Armando Daniel
 
Java orientação a objetos (introdução) - exercicios
Java   orientação a objetos (introdução) - exerciciosJava   orientação a objetos (introdução) - exercicios
Java orientação a objetos (introdução) - exerciciosArmando Daniel
 
Java orientação a objetos (interfaces)
Java   orientação a objetos (interfaces)Java   orientação a objetos (interfaces)
Java orientação a objetos (interfaces)Armando Daniel
 
Java orientação a objetos (herança)
Java   orientação a objetos (herança)Java   orientação a objetos (herança)
Java orientação a objetos (herança)Armando Daniel
 
Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)Armando Daniel
 
Java introdução ao java
Java   introdução ao javaJava   introdução ao java
Java introdução ao javaArmando Daniel
 
Java interface gráfica swing
Java   interface gráfica swingJava   interface gráfica swing
Java interface gráfica swingArmando Daniel
 
Java interface gráfica layouts
Java   interface gráfica layoutsJava   interface gráfica layouts
Java interface gráfica layoutsArmando Daniel
 

Mehr von Armando Daniel (10)

Java recursos avançados - socket connection
Java   recursos avançados - socket connectionJava   recursos avançados - socket connection
Java recursos avançados - socket connection
 
Java recursos avançados - filters
Java   recursos avançados - filtersJava   recursos avançados - filters
Java recursos avançados - filters
 
Java orientação a objetos (variaveis de instancia e metodos)
Java   orientação a objetos (variaveis de instancia e metodos)Java   orientação a objetos (variaveis de instancia e metodos)
Java orientação a objetos (variaveis de instancia e metodos)
 
Java orientação a objetos (introdução) - exercicios
Java   orientação a objetos (introdução) - exerciciosJava   orientação a objetos (introdução) - exercicios
Java orientação a objetos (introdução) - exercicios
 
Java orientação a objetos (interfaces)
Java   orientação a objetos (interfaces)Java   orientação a objetos (interfaces)
Java orientação a objetos (interfaces)
 
Java orientação a objetos (herança)
Java   orientação a objetos (herança)Java   orientação a objetos (herança)
Java orientação a objetos (herança)
 
Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)
 
Java introdução ao java
Java   introdução ao javaJava   introdução ao java
Java introdução ao java
 
Java interface gráfica swing
Java   interface gráfica swingJava   interface gráfica swing
Java interface gráfica swing
 
Java interface gráfica layouts
Java   interface gráfica layoutsJava   interface gráfica layouts
Java interface gráfica layouts
 

Java Vetores e Matrizes

  • 1. Curso de Java by Antonio Rodrigues Carvalho Neto
  • 3. 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.
  • 4. 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
  • 6. Vetor No caso dos títulos de DVDs podemos criar uma única variável chamada dvds que seria um vetor com 7 células suficientes para conter todos os títulos na minha coleção GreenMile Payitforward A.I. TheLastSamurai BraveHeart PatchAdams 0 1 5 6 7432 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[]
  • 7. 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 JessicaAlfred 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----
  • 8. 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
  • 9. Sintaxe de Declaração de 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
  • 10. Sintaxe de Inicialização de Vetores e Matrizes <var> = new <tipo da variável | classe> [ tamanho ]; Ex: a = new int [10]; Ex: d = new int [10][5]; Ex: j = new String [7]; Matriz e Vetores
  • 11. 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 7432 dvds[8] A declaração serve para reservar o espaço na memória do Java. Quando o vetor ou matriz é inicializado o java divide este espaço da memória em celulas Matriz e Vetores
  • 12. 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”;
  • 13. 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.
  • 14. 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