SlideShare uma empresa Scribd logo
1 de 21
Declarar e criar array
Acessar elementos de um array
Determinar o número de elementos de um
array
Declarar e criar array multidimensional
O que vamos ver
hoje?
Na declaração de variáveis, freqüentemente utilizamos um
identificador ou um nome e um tipo de dados. Para se utilizar uma
variável, deve-se chamá-la pelo nome que a identifica.
Por exemplo, temos três variáveis do tipo int com diferentes
identificadores para cada variável
int number1;
int number2;
int number3;
number1 = 1;
number2 = 2;
number3 = 3;
Introdução a Array
Como se vê, inicializar e utilizar variáveis pode torna-se uma
tarefa tediosa, especialmente se elas forem utilizadas para
o mesmo objetivo. Em Java, e em outras linguagens
de programação, pode-se utilizar uma variável para armazenar
e manipular uma lista de dados com maior eficiência. Este tipo
de variável é chamado de array.
Introdução a Array
Um array armazena múltiplos itens de um mesmo tipo de
dado em um bloco contínuo de memória, dividindo-o em certa
quantidade de posições. Imagine um array como uma variável
esticada – que tem um um nome que a identifica e que pode
conter mais de um valor para esta mesma variável.
Introdução a Array
Array precisa ser declarados como qualquer variável. Ao
declarar um array, defina o tipo de dados deste seguido por
colchetes [] e pelo nome que o identifica.
Por exemplo:
int [] ages;
ou colocando os colchetes depois do identificador.
Por exemplo:
int ages[];
Declarando Array
Depois da declaração, precisamos criar o array e especificar
seu tamanho. Este processo é chamado de construção
(a palavra, em orientação a objetos, para a criação de objetos).
Para se construir um objeto, precisamos utilizar um construtor.
Por exemplo:
// declaração
int ages[];
// construindo
ages = new int[100];
ou, pode ser escrito como:
// declarar e construir
int ages[] = new int[100];
Declarando Array
Em vez de utilizar uma nova linha de instrução para construir
um array, também é possível automaticamente declarar,
construir e adicionar um valor uma única vez.
// criando um array de valores lógicos em uma variável
// results. Este array contém 4 elementos que são
// inicializados com os valores {true, false, true, false}
boolean results[] ={ true, false, true, false };
// criando um array de 4 variáveis double inicializados
// com os valores {100, 90, 80, 75};
double []grades = {100, 90, 80, 75};
// criando um array de Strings com identificador days e
// também já inicializado. Este array contém 7 elementos
String days[] = {"Mon","Tue","Wed","Thu","Fri","Sat","Sun"};
Declarando Array
Uma vez que tenha sido inicializado, o tamanho de um array
não pode ser modificado, pois é armazenado em um bloco
contínuo de memória.
Para acessar um elemento do array, ou parte de um array,
utiliza-se um número inteiro chamado de índice.
Declarando Array
Um índice é atribuído para cada membro de um array,
permitindo ao programa e ao programador acessar os valores
individualmente quando necessário. Os números dos índices são sempre
inteiros. Eles começam com zero e progridem seqüencialmente por
todas as posições até o fim do array. Lembre-se que os elementos
dentro do array possuem índice de 0 a tamanhoDoArray-1.
Por exemplo, dado o array ages que declaramos anteriormente, temos:
// atribuir 10 ao primeiro elemento do array
ages[0] = 10;
// imprimir o último elemento do array
System.out.print(ages[99]);
Declarando Array
Lembre-se que o array, uma vez declarado e construído, terá
o valor de cada membro inicializado automaticamente. Conforme a
seguinte tabela:
Declarando Array
Entretanto, tipos de dados por referência, como as Strings, não serão
inicializados caracteres em branco ou com uma string vazia "", serão
inicializados com o valor null. Deste modo, o ideal é preencher os
elementos do arrays de forma explícita antes de utilizá-los. A manipulação
de objetos nulos pode causar a desagradável surpresa de uma
exceção do tipo NullPointerException, por exemplo, ao tentar
executar algum método da classe String,
conforme o exemplo a seguir:
public class ArraySample {
public static void main(String[] args){
String [] nulls = new String[2];
System.out.print(nulls[0]); // Linha correta, mostra null
System.out.print(nulls[1].trim()); // Causa erro
}
}
Declarando Array
O código abaixo utiliza uma declaração for para mostrar todos os
elementos de um array.
public class ArraySample {
public static void main(String[] args){
int[] ages = new int[100];
for (int i = 0; i < 100; i++) {
– ages[i] =i;
System.out.print(ages[i]);
}
}
}
Declarando Array
1. Normalmente, é melhor inicializar, ou instanciar,
um array logo após declará-lo. Por exemplo, a instrução:
int []arr = new int[100];
é preferível, ao invés de:
int [] arr;
arr = new int[100];
2. Os elementos de um array de n elementos tem índices de 0 a n-1. Note
que não existe o elemento arr[n]. A tentativa de acesso a este elemento
causará uma exceção do tipo ArrayIndexOutOfBoundsException, pois o
índice deve ser até n-1.
3. Não é possível modificar o tamanho de um array.
Dicas de programação:
Para se obter o número de elementos de um array, pode-se utilizar o
atributo length. O atributo length de um array retorna seu tamanho, ou
seja, a quantidade de elementos.
É utilizado como no código abaixo:
nomeArray.length
Por exemplo, dado o código anterior, podemos reescrevê-lo como:
public class ArraySample {
public static void main (String[] args) {
int[] ages = new int[100];
for (int i = 0; i < ages.length; i++) {
System.out.print(ages[i]);
}
}
}
Tamanho de Array
1. Quando criar laços com for para o processamento
de um array, utilize o campo length como argumento da expressão lógica.
Isto irá permitir ao laço ajustar-se, automaticamente para tamanhos de
diferentes arrays.
2. Declare o tamanho dos arrays utilizando variáveis do tipo constante para
facilitar alterações posteriores. Por exemplo:
final int ARRAY_SIZE = 1000; // declarando uma constante
...
int[] ages = new int[ARRAY_SIZE];
Dicas de programação:
Arrays multidimensionais são implementados como arrays dentro de
arrays. São declarados ao atribuir um novo conjunto de colchetes depois
do nome do array. Por exemplo:
// array inteiro de 512 x 128 elementos
int [][] twoD = new int[512][128];
// array de caracteres de 8 x 16 x 24
char [][][] threeD = new char[8][16][24];
// array de String de 4 linhas x 2 colunas
String [][] dogs = {{"terry", "brown"},
{"Kristin", "white"},
{"toby", "gray"},
{"fido", "black"}};
Arrays Multidimensionais
Acessar um elemento em um array multidimensional é semelhante a
acessar elementos em um array de uma dimensão. Por exemplo, para
acessar o primeiro elemento da primeira linha do array dogs, escreve-se:
System.out.print(dogs[0][0]);
Isso mostrará a String "terry" na saída padrão. Caso queira mostrar todos
os elementos deste
array, escreve-se:
for (int i = 0; i < dogs.length; i++) {
for (int j = 0; j < dogs[i].length; j++) {
System.out.print(dogs[i][j] + " ");
}
}
Arrays Multidimensionais
Exercícios
7.1. Dias da semana
Criar um array de Strings inicializado com os nomes dos sete dias da
semana. Por exemplo:
String days[] = {"Monday", "Tuesday", "Wednesday", "Thursday",
"Friday", "Saturday", "Sunday"};
Usando uma declaração while, imprima todo o conteúdo do array. Faça
o mesmo para as declarações do-while e for.
7.2. Maior número
Usando as classes BufferedReader, Scanner ou JOptionPane,
solicite 10 números ao usuário. Utilize um array para armazenar o valor
destes números. Mostre o número de maior valor.
Exercícios
Entradas de agenda telefônica
Dado o seguinte array multidimensional, que contém as entradas da
agenda telefônica:
String entry = {{"Florence", "735-1234", "Manila"},
{"Joyce", "983-3333", "Quezon City"},
{"Becca", "456-3322", "Manila"}};
mostre-as conforme o formato abaixo:
Name : Florence
Tel. # : 735-1234
Address: Manila
Name : Joyce
Tel. # : 983-3333
Address: Quezon City
Name : Becca
Tel. # : 456-3322
Address: Manila
Exercícios

Mais conteúdo relacionado

Mais procurados

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
 
Tratamento de exceções
Tratamento de exceçõesTratamento de exceções
Tratamento de exceções
Alvaro Oliveira
 

Mais procurados (20)

Encapsulamento em Orientação a Objetos
Encapsulamento em Orientação a ObjetosEncapsulamento em Orientação a Objetos
Encapsulamento em Orientação a Objetos
 
POO - 13 - Arrays em Java
POO - 13 - Arrays em JavaPOO - 13 - Arrays em Java
POO - 13 - Arrays em Java
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
 
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)
 
Aprendendo Kotlin na Prática
Aprendendo Kotlin na PráticaAprendendo Kotlin na Prática
Aprendendo Kotlin na Prática
 
Algoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registrosAlgoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registros
 
Python Orientação a Objeto
Python Orientação a ObjetoPython Orientação a Objeto
Python Orientação a Objeto
 
POO - 10 - Herança
POO - 10 - HerançaPOO - 10 - Herança
POO - 10 - Herança
 
Tratamento de exceções
Tratamento de exceçõesTratamento de exceções
Tratamento de exceções
 
POO - 01 - Introdução ao Paradigma Orientado a Objetos
POO - 01 - Introdução ao Paradigma Orientado a ObjetosPOO - 01 - Introdução ao Paradigma Orientado a Objetos
POO - 01 - Introdução ao Paradigma Orientado a Objetos
 
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
 
Exercicios Vetores (Arrays) - Estruturas de dados e algoritmos com Java
Exercicios Vetores (Arrays) - Estruturas de dados e algoritmos com JavaExercicios Vetores (Arrays) - Estruturas de dados e algoritmos com Java
Exercicios Vetores (Arrays) - Estruturas de dados e algoritmos com Java
 
Padrões de Projeto de Software
Padrões de Projeto de SoftwarePadrões de Projeto de Software
Padrões de Projeto de Software
 
[Curso Java Basico] Aula 20: Arrays multidimensionais - Matrizes
[Curso Java Basico] Aula 20: Arrays multidimensionais - Matrizes[Curso Java Basico] Aula 20: Arrays multidimensionais - Matrizes
[Curso Java Basico] Aula 20: Arrays multidimensionais - Matrizes
 
03 - Orientação a objetos e classes em C# v1.0
03 - Orientação a objetos e classes em C# v1.003 - Orientação a objetos e classes em C# v1.0
03 - Orientação a objetos e classes em C# v1.0
 
Algoritmos - Pseudocódigo
Algoritmos - PseudocódigoAlgoritmos - Pseudocódigo
Algoritmos - Pseudocódigo
 
Java Lista Exercicios 03
Java Lista Exercicios 03Java Lista Exercicios 03
Java Lista Exercicios 03
 
UML
UMLUML
UML
 
Uml
UmlUml
Uml
 
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Estrutura de Dados - Aula 02 - Estrutura de Dados e TADEstrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
 

Destaque

Congres Het Nieuwe Werken, Wetenschap en Praktijk
Congres Het Nieuwe Werken, Wetenschap en PraktijkCongres Het Nieuwe Werken, Wetenschap en Praktijk
Congres Het Nieuwe Werken, Wetenschap en Praktijk
R. Zandbergen
 

Destaque (8)

OPC TWS – MODULO 03
OPC TWS – MODULO 03OPC TWS – MODULO 03
OPC TWS – MODULO 03
 
Congres Het Nieuwe Werken, Wetenschap en Praktijk
Congres Het Nieuwe Werken, Wetenschap en PraktijkCongres Het Nieuwe Werken, Wetenschap en Praktijk
Congres Het Nieuwe Werken, Wetenschap en Praktijk
 
Gemeente Amstelveen - Ronde Tafel 2.0
Gemeente Amstelveen - Ronde Tafel 2.0Gemeente Amstelveen - Ronde Tafel 2.0
Gemeente Amstelveen - Ronde Tafel 2.0
 
GHOR werkdag 3 april 2012
GHOR werkdag 3 april 2012GHOR werkdag 3 april 2012
GHOR werkdag 3 april 2012
 
Open Innovatie Festival - Ruud Zandbergen
Open Innovatie Festival - Ruud ZandbergenOpen Innovatie Festival - Ruud Zandbergen
Open Innovatie Festival - Ruud Zandbergen
 
Sessie Ambtenaar 2.0 & Web 2.0 voor OndernemingsRaad
Sessie Ambtenaar 2.0 & Web 2.0 voor OndernemingsRaadSessie Ambtenaar 2.0 & Web 2.0 voor OndernemingsRaad
Sessie Ambtenaar 2.0 & Web 2.0 voor OndernemingsRaad
 
Java básico - módulo 03: captura de dados
Java  básico - módulo 03: captura de dadosJava  básico - módulo 03: captura de dados
Java básico - módulo 03: captura de dados
 
OPC TWS – MODULO 05
OPC TWS – MODULO 05OPC TWS – MODULO 05
OPC TWS – MODULO 05
 

Semelhante a Java básico - Módulo 06: Array

Classe integer-float-byte-short-long-double
Classe integer-float-byte-short-long-doubleClasse integer-float-byte-short-long-double
Classe integer-float-byte-short-long-double
PAULO Moreira
 
4234 mysql
4234 mysql4234 mysql
4234 mysql
herbam
 

Semelhante a Java básico - Módulo 06: Array (20)

Capítulo 6
Capítulo 6Capítulo 6
Capítulo 6
 
Arrays (vetores) em Java
Arrays (vetores) em JavaArrays (vetores) em Java
Arrays (vetores) em Java
 
Java8
Java8Java8
Java8
 
Java 06 Strings Arrays
Java 06 Strings ArraysJava 06 Strings Arrays
Java 06 Strings Arrays
 
Vetores, Matrizes e Strings em C Parte 1
Vetores, Matrizes e Strings em C Parte 1Vetores, Matrizes e Strings em C Parte 1
Vetores, Matrizes e Strings em C Parte 1
 
Trabalho vetores
Trabalho vetoresTrabalho vetores
Trabalho vetores
 
Curso de PHP - Arrays
Curso de PHP - ArraysCurso de PHP - Arrays
Curso de PHP - Arrays
 
Linguagem C - Vetores
Linguagem C - VetoresLinguagem C - Vetores
Linguagem C - Vetores
 
Arrays
ArraysArrays
Arrays
 
Arrays / Vetores / Matrizes em programação
Arrays / Vetores / Matrizes em programaçãoArrays / Vetores / Matrizes em programação
Arrays / Vetores / Matrizes em programação
 
Estruturas de dados e técnicas de programação
Estruturas de dados e técnicas de programaçãoEstruturas de dados e técnicas de programação
Estruturas de dados e técnicas de programação
 
Cap09
Cap09Cap09
Cap09
 
Cap09
Cap09Cap09
Cap09
 
Cap09
Cap09Cap09
Cap09
 
Programação aula002
Programação aula002Programação aula002
Programação aula002
 
Classe integer-float-byte-short-long-double
Classe integer-float-byte-short-long-doubleClasse integer-float-byte-short-long-double
Classe integer-float-byte-short-long-double
 
4234 mysql
4234 mysql4234 mysql
4234 mysql
 
Apostila php 01
Apostila php 01Apostila php 01
Apostila php 01
 
05 classes utilitarias
05   classes utilitarias05   classes utilitarias
05 classes utilitarias
 
Colecções do c#
Colecções do c#Colecções do c#
Colecções do c#
 

Mais de Professor Samuel Ribeiro

Mais de Professor Samuel Ribeiro (20)

Tecnologia, Inovação e uma pitada de Programação
Tecnologia, Inovação e uma pitada de ProgramaçãoTecnologia, Inovação e uma pitada de Programação
Tecnologia, Inovação e uma pitada de Programação
 
Apresentação do Curso Técnico em Informática para Internet
Apresentação do Curso Técnico em Informática para InternetApresentação do Curso Técnico em Informática para Internet
Apresentação do Curso Técnico em Informática para Internet
 
Informatica Básica - Sexta Básica
Informatica Básica - Sexta BásicaInformatica Básica - Sexta Básica
Informatica Básica - Sexta Básica
 
Introdução à programação para web com Java - Módulo 01: Conexão com bamco de...
Introdução à programação para web com Java -  Módulo 01: Conexão com bamco de...Introdução à programação para web com Java -  Módulo 01: Conexão com bamco de...
Introdução à programação para web com Java - Módulo 01: Conexão com bamco de...
 
Introdução à programação para web com Java - Módulo 03: Conceitos básicos de...
Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de...Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de...
Introdução à programação para web com Java - Módulo 03: Conceitos básicos de...
 
Introdução à programação para web com Java - Módulo 02: Conceitos básicos de...
Introdução à programação para web com Java -  Módulo 02: Conceitos básicos de...Introdução à programação para web com Java -  Módulo 02: Conceitos básicos de...
Introdução à programação para web com Java - Módulo 02: Conceitos básicos de...
 
Introdução à programação para web com Java - Módulo 01: Conceitos básicos
Introdução à programação para web com Java -  Módulo 01: Conceitos básicosIntrodução à programação para web com Java -  Módulo 01: Conceitos básicos
Introdução à programação para web com Java - Módulo 01: Conceitos básicos
 
Java básico - Módulo 09: Introdução a programação orientada à objetos
Java básico - Módulo 09: Introdução a programação orientada à objetosJava básico - Módulo 09: Introdução a programação orientada à objetos
Java básico - Módulo 09: Introdução a programação orientada à objetos
 
Java básico - Módulo 08 - Introdução à programação orientada à objetos oo - c...
Java básico - Módulo 08 - Introdução à programação orientada à objetos oo - c...Java básico - Módulo 08 - Introdução à programação orientada à objetos oo - c...
Java básico - Módulo 08 - Introdução à programação orientada à objetos oo - c...
 
Java Básico - Módulo 07: Introdução à programação orientada à objetos
Java Básico - Módulo 07: Introdução à programação orientada à objetos Java Básico - Módulo 07: Introdução à programação orientada à objetos
Java Básico - Módulo 07: Introdução à programação orientada à objetos
 
Java básico - Módulo 04: Estruturas de controle
Java   básico - Módulo 04:  Estruturas de controleJava   básico - Módulo 04:  Estruturas de controle
Java básico - Módulo 04: Estruturas de controle
 
Java m01 - Nomenclaturas
Java   m01 - NomenclaturasJava   m01 - Nomenclaturas
Java m01 - Nomenclaturas
 
OPC TWS – MODULO 06
OPC TWS – MODULO 06OPC TWS – MODULO 06
OPC TWS – MODULO 06
 
OPC TWS – MODULO 04
OPC TWS – MODULO 04OPC TWS – MODULO 04
OPC TWS – MODULO 04
 
OPC-TWS - modulo 02
OPC-TWS - modulo 02OPC-TWS - modulo 02
OPC-TWS - modulo 02
 
OPC-TWS - Módulo 01
OPC-TWS -  Módulo 01OPC-TWS -  Módulo 01
OPC-TWS - Módulo 01
 
Algoritmo 06 - Array e Matrizes
Algoritmo 06 - Array e MatrizesAlgoritmo 06 - Array e Matrizes
Algoritmo 06 - Array e Matrizes
 
Algoritmos 05 - Estruturas de repetição
Algoritmos 05 - Estruturas de repetiçãoAlgoritmos 05 - Estruturas de repetição
Algoritmos 05 - Estruturas de repetição
 
Algoritmo 04 - Estruturas de decisão
 Algoritmo 04 - Estruturas de decisão Algoritmo 04 - Estruturas de decisão
Algoritmo 04 - Estruturas de decisão
 
Algoritmo - tipos de dados
Algoritmo - tipos de dadosAlgoritmo - tipos de dados
Algoritmo - tipos de dados
 

Último

Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
TailsonSantos1
 
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffffSSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
NarlaAquino
 
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
PatriciaCaetano18
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
HELENO FAVACHO
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
marlene54545
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito
tatianehilda
 

Último (20)

Aula de jornada de trabalho - reforma.ppt
Aula de jornada de trabalho - reforma.pptAula de jornada de trabalho - reforma.ppt
Aula de jornada de trabalho - reforma.ppt
 
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptxSlides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
 
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIAPROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
 
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
 
O PLANETA TERRA E SEU SATÉLITE NATURAL - LUA
O PLANETA TERRA E SEU SATÉLITE NATURAL - LUAO PLANETA TERRA E SEU SATÉLITE NATURAL - LUA
O PLANETA TERRA E SEU SATÉLITE NATURAL - LUA
 
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffffSSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
 
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
 
E a chuva ... (Livro pedagógico para ser usado na educação infantil e trabal...
E a chuva ...  (Livro pedagógico para ser usado na educação infantil e trabal...E a chuva ...  (Livro pedagógico para ser usado na educação infantil e trabal...
E a chuva ... (Livro pedagógico para ser usado na educação infantil e trabal...
 
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
 
migração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenosmigração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenos
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
Araribá slides 9ano.pdf para os alunos do medio
Araribá slides 9ano.pdf para os alunos do medioAraribá slides 9ano.pdf para os alunos do medio
Araribá slides 9ano.pdf para os alunos do medio
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito
 
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaPROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
 

Java básico - Módulo 06: Array

  • 1.
  • 2. Declarar e criar array Acessar elementos de um array Determinar o número de elementos de um array Declarar e criar array multidimensional O que vamos ver hoje?
  • 3. Na declaração de variáveis, freqüentemente utilizamos um identificador ou um nome e um tipo de dados. Para se utilizar uma variável, deve-se chamá-la pelo nome que a identifica. Por exemplo, temos três variáveis do tipo int com diferentes identificadores para cada variável int number1; int number2; int number3; number1 = 1; number2 = 2; number3 = 3; Introdução a Array
  • 4. Como se vê, inicializar e utilizar variáveis pode torna-se uma tarefa tediosa, especialmente se elas forem utilizadas para o mesmo objetivo. Em Java, e em outras linguagens de programação, pode-se utilizar uma variável para armazenar e manipular uma lista de dados com maior eficiência. Este tipo de variável é chamado de array. Introdução a Array
  • 5. Um array armazena múltiplos itens de um mesmo tipo de dado em um bloco contínuo de memória, dividindo-o em certa quantidade de posições. Imagine um array como uma variável esticada – que tem um um nome que a identifica e que pode conter mais de um valor para esta mesma variável. Introdução a Array
  • 6. Array precisa ser declarados como qualquer variável. Ao declarar um array, defina o tipo de dados deste seguido por colchetes [] e pelo nome que o identifica. Por exemplo: int [] ages; ou colocando os colchetes depois do identificador. Por exemplo: int ages[]; Declarando Array
  • 7. Depois da declaração, precisamos criar o array e especificar seu tamanho. Este processo é chamado de construção (a palavra, em orientação a objetos, para a criação de objetos). Para se construir um objeto, precisamos utilizar um construtor. Por exemplo: // declaração int ages[]; // construindo ages = new int[100]; ou, pode ser escrito como: // declarar e construir int ages[] = new int[100]; Declarando Array
  • 8. Em vez de utilizar uma nova linha de instrução para construir um array, também é possível automaticamente declarar, construir e adicionar um valor uma única vez. // criando um array de valores lógicos em uma variável // results. Este array contém 4 elementos que são // inicializados com os valores {true, false, true, false} boolean results[] ={ true, false, true, false }; // criando um array de 4 variáveis double inicializados // com os valores {100, 90, 80, 75}; double []grades = {100, 90, 80, 75}; // criando um array de Strings com identificador days e // também já inicializado. Este array contém 7 elementos String days[] = {"Mon","Tue","Wed","Thu","Fri","Sat","Sun"}; Declarando Array
  • 9. Uma vez que tenha sido inicializado, o tamanho de um array não pode ser modificado, pois é armazenado em um bloco contínuo de memória. Para acessar um elemento do array, ou parte de um array, utiliza-se um número inteiro chamado de índice. Declarando Array
  • 10. Um índice é atribuído para cada membro de um array, permitindo ao programa e ao programador acessar os valores individualmente quando necessário. Os números dos índices são sempre inteiros. Eles começam com zero e progridem seqüencialmente por todas as posições até o fim do array. Lembre-se que os elementos dentro do array possuem índice de 0 a tamanhoDoArray-1. Por exemplo, dado o array ages que declaramos anteriormente, temos: // atribuir 10 ao primeiro elemento do array ages[0] = 10; // imprimir o último elemento do array System.out.print(ages[99]); Declarando Array
  • 11. Lembre-se que o array, uma vez declarado e construído, terá o valor de cada membro inicializado automaticamente. Conforme a seguinte tabela: Declarando Array
  • 12. Entretanto, tipos de dados por referência, como as Strings, não serão inicializados caracteres em branco ou com uma string vazia "", serão inicializados com o valor null. Deste modo, o ideal é preencher os elementos do arrays de forma explícita antes de utilizá-los. A manipulação de objetos nulos pode causar a desagradável surpresa de uma exceção do tipo NullPointerException, por exemplo, ao tentar executar algum método da classe String, conforme o exemplo a seguir: public class ArraySample { public static void main(String[] args){ String [] nulls = new String[2]; System.out.print(nulls[0]); // Linha correta, mostra null System.out.print(nulls[1].trim()); // Causa erro } } Declarando Array
  • 13. O código abaixo utiliza uma declaração for para mostrar todos os elementos de um array. public class ArraySample { public static void main(String[] args){ int[] ages = new int[100]; for (int i = 0; i < 100; i++) { – ages[i] =i; System.out.print(ages[i]); } } } Declarando Array
  • 14. 1. Normalmente, é melhor inicializar, ou instanciar, um array logo após declará-lo. Por exemplo, a instrução: int []arr = new int[100]; é preferível, ao invés de: int [] arr; arr = new int[100]; 2. Os elementos de um array de n elementos tem índices de 0 a n-1. Note que não existe o elemento arr[n]. A tentativa de acesso a este elemento causará uma exceção do tipo ArrayIndexOutOfBoundsException, pois o índice deve ser até n-1. 3. Não é possível modificar o tamanho de um array. Dicas de programação:
  • 15. Para se obter o número de elementos de um array, pode-se utilizar o atributo length. O atributo length de um array retorna seu tamanho, ou seja, a quantidade de elementos. É utilizado como no código abaixo: nomeArray.length Por exemplo, dado o código anterior, podemos reescrevê-lo como: public class ArraySample { public static void main (String[] args) { int[] ages = new int[100]; for (int i = 0; i < ages.length; i++) { System.out.print(ages[i]); } } } Tamanho de Array
  • 16. 1. Quando criar laços com for para o processamento de um array, utilize o campo length como argumento da expressão lógica. Isto irá permitir ao laço ajustar-se, automaticamente para tamanhos de diferentes arrays. 2. Declare o tamanho dos arrays utilizando variáveis do tipo constante para facilitar alterações posteriores. Por exemplo: final int ARRAY_SIZE = 1000; // declarando uma constante ... int[] ages = new int[ARRAY_SIZE]; Dicas de programação:
  • 17. Arrays multidimensionais são implementados como arrays dentro de arrays. São declarados ao atribuir um novo conjunto de colchetes depois do nome do array. Por exemplo: // array inteiro de 512 x 128 elementos int [][] twoD = new int[512][128]; // array de caracteres de 8 x 16 x 24 char [][][] threeD = new char[8][16][24]; // array de String de 4 linhas x 2 colunas String [][] dogs = {{"terry", "brown"}, {"Kristin", "white"}, {"toby", "gray"}, {"fido", "black"}}; Arrays Multidimensionais
  • 18. Acessar um elemento em um array multidimensional é semelhante a acessar elementos em um array de uma dimensão. Por exemplo, para acessar o primeiro elemento da primeira linha do array dogs, escreve-se: System.out.print(dogs[0][0]); Isso mostrará a String "terry" na saída padrão. Caso queira mostrar todos os elementos deste array, escreve-se: for (int i = 0; i < dogs.length; i++) { for (int j = 0; j < dogs[i].length; j++) { System.out.print(dogs[i][j] + " "); } } Arrays Multidimensionais
  • 20. 7.1. Dias da semana Criar um array de Strings inicializado com os nomes dos sete dias da semana. Por exemplo: String days[] = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"}; Usando uma declaração while, imprima todo o conteúdo do array. Faça o mesmo para as declarações do-while e for. 7.2. Maior número Usando as classes BufferedReader, Scanner ou JOptionPane, solicite 10 números ao usuário. Utilize um array para armazenar o valor destes números. Mostre o número de maior valor. Exercícios
  • 21. Entradas de agenda telefônica Dado o seguinte array multidimensional, que contém as entradas da agenda telefônica: String entry = {{"Florence", "735-1234", "Manila"}, {"Joyce", "983-3333", "Quezon City"}, {"Becca", "456-3322", "Manila"}}; mostre-as conforme o formato abaixo: Name : Florence Tel. # : 735-1234 Address: Manila Name : Joyce Tel. # : 983-3333 Address: Quezon City Name : Becca Tel. # : 456-3322 Address: Manila Exercícios