SlideShare uma empresa Scribd logo
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 Básico :: Classe Vector
Java Básico :: Classe VectorJava Básico :: Classe Vector
Java Básico :: Classe Vector
Wesley R. Bezerra
 
Orientação a Objetos em Python
Orientação a Objetos em PythonOrientação a Objetos em Python
Orientação a Objetos em Python
Luciano Ramalho
 
Aula03 - JavaScript
Aula03 - JavaScriptAula03 - JavaScript
Aula03 - JavaScript
Jorge Ávila Miranda
 
Java básico - Módulo 05 - Estruturas de Repetição
Java  básico - Módulo 05 - Estruturas de RepetiçãoJava  básico - Módulo 05 - Estruturas de Repetição
Java básico - Módulo 05 - Estruturas de Repetição
Professor Samuel Ribeiro
 
Algoritmos - Vetores
Algoritmos - VetoresAlgoritmos - Vetores
Algoritmos - Vetores
Elaine Cecília Gatto
 
Algoritmo 04 - Estruturas de decisão
 Algoritmo 04 - Estruturas de decisão Algoritmo 04 - Estruturas de decisão
Algoritmo 04 - Estruturas de decisão
Professor Samuel Ribeiro
 
Arrays (vetores) em Java
Arrays (vetores) em JavaArrays (vetores) em Java
Arrays (vetores) em Java
Daniel Brandão
 
Java script - funções
Java script - funçõesJava script - funções
Java script - funções
Cristiano Pires Martins
 
Pilha e filas
Pilha e filasPilha e filas
Pilha e filas
Patrick Silva
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
rodfernandes
 
Construindo aplicações web java com netbeans
Construindo aplicações web java com netbeansConstruindo aplicações web java com netbeans
Construindo aplicações web java com netbeansSliedesharessbarbosa
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos
Luis Ferreira
 
JAVA - ENCAPSULAMENTO
JAVA - ENCAPSULAMENTOJAVA - ENCAPSULAMENTO
JAVA - ENCAPSULAMENTO
André Victor
 
Encapsulamento em Orientação a Objetos
Encapsulamento em Orientação a ObjetosEncapsulamento em Orientação a Objetos
Encapsulamento em Orientação a Objetos
Daniel Brandão
 
Introdução básica ao JavaScript
Introdução básica ao JavaScriptIntrodução básica ao JavaScript
Introdução básica ao JavaScript
Carlos Eduardo Kadu
 
Java: Estruturas de Repetição
Java: Estruturas de RepetiçãoJava: Estruturas de Repetição
Java: Estruturas de Repetição
Arthur Emanuel
 
Aprendendo a Usar o Netbeans
Aprendendo a Usar o NetbeansAprendendo a Usar o Netbeans
Aprendendo a Usar o Netbeans
Tiago Antônio da Silva
 

Mais procurados (20)

Java Básico :: Classe Vector
Java Básico :: Classe VectorJava Básico :: Classe Vector
Java Básico :: Classe Vector
 
POO - 13 - Arrays em Java
POO - 13 - Arrays em JavaPOO - 13 - Arrays em Java
POO - 13 - Arrays em Java
 
Orientação a Objetos em Python
Orientação a Objetos em PythonOrientação a Objetos em Python
Orientação a Objetos em Python
 
Aula03 - JavaScript
Aula03 - JavaScriptAula03 - JavaScript
Aula03 - JavaScript
 
Java básico - Módulo 05 - Estruturas de Repetição
Java  básico - Módulo 05 - Estruturas de RepetiçãoJava  básico - Módulo 05 - Estruturas de Repetição
Java básico - Módulo 05 - Estruturas de Repetição
 
Algoritmos - Vetores
Algoritmos - VetoresAlgoritmos - Vetores
Algoritmos - Vetores
 
Algoritmo 04 - Estruturas de decisão
 Algoritmo 04 - Estruturas de decisão Algoritmo 04 - Estruturas de decisão
Algoritmo 04 - Estruturas de decisão
 
Arrays (vetores) em Java
Arrays (vetores) em JavaArrays (vetores) em Java
Arrays (vetores) em Java
 
POO - 14 - Vetores
POO - 14 - VetoresPOO - 14 - Vetores
POO - 14 - Vetores
 
Java script - funções
Java script - funçõesJava script - funções
Java script - funções
 
Pilha e filas
Pilha e filasPilha e filas
Pilha e filas
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
 
Construindo aplicações web java com netbeans
Construindo aplicações web java com netbeansConstruindo aplicações web java com netbeans
Construindo aplicações web java com netbeans
 
Aula diagrama de classes
Aula diagrama de classesAula diagrama de classes
Aula diagrama de classes
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos
 
JAVA - ENCAPSULAMENTO
JAVA - ENCAPSULAMENTOJAVA - ENCAPSULAMENTO
JAVA - ENCAPSULAMENTO
 
Encapsulamento em Orientação a Objetos
Encapsulamento em Orientação a ObjetosEncapsulamento em Orientação a Objetos
Encapsulamento em Orientação a Objetos
 
Introdução básica ao JavaScript
Introdução básica ao JavaScriptIntrodução básica ao JavaScript
Introdução básica ao JavaScript
 
Java: Estruturas de Repetição
Java: Estruturas de RepetiçãoJava: Estruturas de Repetição
Java: Estruturas de Repetição
 
Aprendendo a Usar o Netbeans
Aprendendo a Usar o NetbeansAprendendo a Usar o Netbeans
Aprendendo a Usar o Netbeans
 

Destaque

OPC TWS – MODULO 03
OPC TWS – MODULO 03OPC TWS – MODULO 03
OPC TWS – MODULO 03
Professor Samuel Ribeiro
 
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
 
Gemeente Amstelveen - Ronde Tafel 2.0
Gemeente Amstelveen - Ronde Tafel 2.0Gemeente Amstelveen - Ronde Tafel 2.0
Gemeente Amstelveen - Ronde Tafel 2.0
R. Zandbergen
 
GHOR werkdag 3 april 2012
GHOR werkdag 3 april 2012GHOR werkdag 3 april 2012
GHOR werkdag 3 april 2012
R. Zandbergen
 
Open Innovatie Festival - Ruud Zandbergen
Open Innovatie Festival - Ruud ZandbergenOpen Innovatie Festival - Ruud Zandbergen
Open Innovatie Festival - Ruud Zandbergen
R. 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
R. Zandbergen
 
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
Professor Samuel Ribeiro
 
OPC TWS – MODULO 05
OPC TWS – MODULO 05OPC TWS – MODULO 05
OPC TWS – MODULO 05
Professor Samuel Ribeiro
 

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

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
Elaine Cecília Gatto
 
Trabalho vetores
Trabalho vetoresTrabalho vetores
Trabalho vetores
TV Pernambuco
 
Curso de PHP - Arrays
Curso de PHP - ArraysCurso de PHP - Arrays
Curso de PHP - Arrays
Fabio Moura Pereira
 
Linguagem C - Vetores
Linguagem C - VetoresLinguagem C - Vetores
Linguagem C - Vetores
Elaine Cecília Gatto
 
Arrays
ArraysArrays
Arrays
Pedro Neto
 
Arrays / Vetores / Matrizes em programação
Arrays / Vetores / Matrizes em programaçãoArrays / Vetores / Matrizes em programação
Arrays / Vetores / Matrizes em programação
Jaime Martins
 
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
Everson Wolf
 
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-doublePAULO Moreira
 
Apostila php 01
Apostila php 01Apostila php 01
Apostila php 01
Gislene Carvalho
 
4234 mysql
4234 mysql4234 mysql
4234 mysqlherbam
 
05 classes utilitarias
05   classes utilitarias05   classes utilitarias
05 classes utilitarias
Artur Todeschini
 

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

Capítulo 6
Capítulo 6Capítulo 6
Capítulo 6
 
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
 
Apostila php 01
Apostila php 01Apostila php 01
Apostila php 01
 
4234 mysql
4234 mysql4234 mysql
4234 mysql
 
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#
 
PHP Básico - Parte 3
PHP Básico - Parte 3PHP Básico - Parte 3
PHP Básico - Parte 3
 

Mais de Professor Samuel Ribeiro

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
Professor Samuel Ribeiro
 
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
Professor Samuel Ribeiro
 
Informatica Básica - Sexta Básica
Informatica Básica - Sexta BásicaInformatica Básica - Sexta Básica
Informatica Básica - Sexta Básica
Professor Samuel Ribeiro
 
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...
Professor Samuel Ribeiro
 
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...
Professor Samuel Ribeiro
 
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...
Professor Samuel Ribeiro
 
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
Professor Samuel Ribeiro
 
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
Professor Samuel Ribeiro
 
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...
Professor Samuel Ribeiro
 
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
Professor Samuel Ribeiro
 
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
Professor Samuel Ribeiro
 
Java m01 - Nomenclaturas
Java   m01 - NomenclaturasJava   m01 - Nomenclaturas
Java m01 - Nomenclaturas
Professor Samuel Ribeiro
 
OPC TWS – MODULO 06
OPC TWS – MODULO 06OPC TWS – MODULO 06
OPC TWS – MODULO 06
Professor Samuel Ribeiro
 
OPC TWS – MODULO 04
OPC TWS – MODULO 04OPC TWS – MODULO 04
OPC TWS – MODULO 04
Professor Samuel Ribeiro
 
OPC-TWS - modulo 02
OPC-TWS - modulo 02OPC-TWS - modulo 02
OPC-TWS - modulo 02
Professor Samuel Ribeiro
 
OPC-TWS - Módulo 01
OPC-TWS -  Módulo 01OPC-TWS -  Módulo 01
OPC-TWS - Módulo 01
Professor Samuel Ribeiro
 
Algoritmo 06 - Array e Matrizes
Algoritmo 06 - Array e MatrizesAlgoritmo 06 - Array e Matrizes
Algoritmo 06 - Array e Matrizes
Professor Samuel Ribeiro
 
Algoritmos 05 - Estruturas de repetição
Algoritmos 05 - Estruturas de repetiçãoAlgoritmos 05 - Estruturas de repetição
Algoritmos 05 - Estruturas de repetição
Professor Samuel Ribeiro
 
Algoritmo - tipos de dados
Algoritmo - tipos de dadosAlgoritmo - tipos de dados
Algoritmo - tipos de dados
Professor Samuel Ribeiro
 
Java modulo 01 - Introdução
Java modulo 01 - IntroduçãoJava modulo 01 - Introdução
Java modulo 01 - Introdução
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 - tipos de dados
Algoritmo - tipos de dadosAlgoritmo - tipos de dados
Algoritmo - tipos de dados
 
Java modulo 01 - Introdução
Java modulo 01 - IntroduçãoJava modulo 01 - Introdução
Java modulo 01 - Introdução
 

Último

Roteiro para análise do Livro Didático .pptx
Roteiro para análise do Livro Didático .pptxRoteiro para análise do Livro Didático .pptx
Roteiro para análise do Livro Didático .pptx
pamellaaraujo10
 
Anatomia I - Aparelho Locomotor e Cardiovascular
Anatomia I - Aparelho Locomotor e CardiovascularAnatomia I - Aparelho Locomotor e Cardiovascular
Anatomia I - Aparelho Locomotor e Cardiovascular
PatrickMuniz8
 
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
IsabelPereira2010
 
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
Escola Municipal Jesus Cristo
 
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdfCaderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
enpfilosofiaufu
 
2021-7o-ano-PPt-Oracoes-coordenadas..pptx
2021-7o-ano-PPt-Oracoes-coordenadas..pptx2021-7o-ano-PPt-Oracoes-coordenadas..pptx
2021-7o-ano-PPt-Oracoes-coordenadas..pptx
BarbaraBeatriz15
 
APOSTILA JUIZ DE PAZ capelania cristã.pdf
APOSTILA JUIZ DE PAZ capelania cristã.pdfAPOSTILA JUIZ DE PAZ capelania cristã.pdf
APOSTILA JUIZ DE PAZ capelania cristã.pdf
CarlosEduardoSola
 
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Luana Neres
 
proposta curricular ou plano de cursode lingua portuguesa eja anos finais ( ...
proposta curricular  ou plano de cursode lingua portuguesa eja anos finais ( ...proposta curricular  ou plano de cursode lingua portuguesa eja anos finais ( ...
proposta curricular ou plano de cursode lingua portuguesa eja anos finais ( ...
Escola Municipal Jesus Cristo
 
curso-de-direito-administrativo-celso-antonio-bandeira-de-mello_compress.pdf
curso-de-direito-administrativo-celso-antonio-bandeira-de-mello_compress.pdfcurso-de-direito-administrativo-celso-antonio-bandeira-de-mello_compress.pdf
curso-de-direito-administrativo-celso-antonio-bandeira-de-mello_compress.pdf
LeandroTelesRocha2
 
Caça-palavras - ortografia S, SS, X, C e Z
Caça-palavras - ortografia  S, SS, X, C e ZCaça-palavras - ortografia  S, SS, X, C e Z
Caça-palavras - ortografia S, SS, X, C e Z
Mary Alvarenga
 
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptxSlides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
LuizHenriquedeAlmeid6
 
ptoposta curricular de geografia.da educação de jovens a e adultos
ptoposta curricular de geografia.da educação de jovens a e adultosptoposta curricular de geografia.da educação de jovens a e adultos
ptoposta curricular de geografia.da educação de jovens a e adultos
Escola Municipal Jesus Cristo
 
História Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco LeiteHistória Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco Leite
profesfrancleite
 
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptxSlides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
LuizHenriquedeAlmeid6
 
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptxSlides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
LuizHenriquedeAlmeid6
 
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptxHISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
WALTERDECARVALHOBRAG
 
A nossa mini semana 2706 2906 Juliana.pptx
A nossa mini semana 2706 2906 Juliana.pptxA nossa mini semana 2706 2906 Juliana.pptx
A nossa mini semana 2706 2906 Juliana.pptx
juserpa07
 
Manejo de feridas - Classificação e cuidados.
Manejo de feridas - Classificação e cuidados.Manejo de feridas - Classificação e cuidados.
Manejo de feridas - Classificação e cuidados.
RafaelNeves651350
 
Atividade - Letra da música "Tem Que Sorrir" - Jorge e Mateus
Atividade - Letra da música "Tem Que Sorrir"  - Jorge e MateusAtividade - Letra da música "Tem Que Sorrir"  - Jorge e Mateus
Atividade - Letra da música "Tem Que Sorrir" - Jorge e Mateus
Mary Alvarenga
 

Último (20)

Roteiro para análise do Livro Didático .pptx
Roteiro para análise do Livro Didático .pptxRoteiro para análise do Livro Didático .pptx
Roteiro para análise do Livro Didático .pptx
 
Anatomia I - Aparelho Locomotor e Cardiovascular
Anatomia I - Aparelho Locomotor e CardiovascularAnatomia I - Aparelho Locomotor e Cardiovascular
Anatomia I - Aparelho Locomotor e Cardiovascular
 
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
 
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
 
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdfCaderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
 
2021-7o-ano-PPt-Oracoes-coordenadas..pptx
2021-7o-ano-PPt-Oracoes-coordenadas..pptx2021-7o-ano-PPt-Oracoes-coordenadas..pptx
2021-7o-ano-PPt-Oracoes-coordenadas..pptx
 
APOSTILA JUIZ DE PAZ capelania cristã.pdf
APOSTILA JUIZ DE PAZ capelania cristã.pdfAPOSTILA JUIZ DE PAZ capelania cristã.pdf
APOSTILA JUIZ DE PAZ capelania cristã.pdf
 
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
 
proposta curricular ou plano de cursode lingua portuguesa eja anos finais ( ...
proposta curricular  ou plano de cursode lingua portuguesa eja anos finais ( ...proposta curricular  ou plano de cursode lingua portuguesa eja anos finais ( ...
proposta curricular ou plano de cursode lingua portuguesa eja anos finais ( ...
 
curso-de-direito-administrativo-celso-antonio-bandeira-de-mello_compress.pdf
curso-de-direito-administrativo-celso-antonio-bandeira-de-mello_compress.pdfcurso-de-direito-administrativo-celso-antonio-bandeira-de-mello_compress.pdf
curso-de-direito-administrativo-celso-antonio-bandeira-de-mello_compress.pdf
 
Caça-palavras - ortografia S, SS, X, C e Z
Caça-palavras - ortografia  S, SS, X, C e ZCaça-palavras - ortografia  S, SS, X, C e Z
Caça-palavras - ortografia S, SS, X, C e Z
 
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptxSlides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
 
ptoposta curricular de geografia.da educação de jovens a e adultos
ptoposta curricular de geografia.da educação de jovens a e adultosptoposta curricular de geografia.da educação de jovens a e adultos
ptoposta curricular de geografia.da educação de jovens a e adultos
 
História Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco LeiteHistória Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco Leite
 
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptxSlides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
 
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptxSlides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
 
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptxHISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
 
A nossa mini semana 2706 2906 Juliana.pptx
A nossa mini semana 2706 2906 Juliana.pptxA nossa mini semana 2706 2906 Juliana.pptx
A nossa mini semana 2706 2906 Juliana.pptx
 
Manejo de feridas - Classificação e cuidados.
Manejo de feridas - Classificação e cuidados.Manejo de feridas - Classificação e cuidados.
Manejo de feridas - Classificação e cuidados.
 
Atividade - Letra da música "Tem Que Sorrir" - Jorge e Mateus
Atividade - Letra da música "Tem Que Sorrir"  - Jorge e MateusAtividade - Letra da música "Tem Que Sorrir"  - Jorge e Mateus
Atividade - Letra da música "Tem Que Sorrir" - Jorge e Mateus
 

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