Sie sind auf Seite 1von 100

Introduo a Programao de

Computadores com Java Parte 1


Curso de Extenso de Introduo a
Programao de Computadores com
Java
Prof. Celso Romo Cardoso de Almeida

Arquitetura e organizao de
computadores
Terminologia
Processamento de dados
Srie de operaes que se aplica a um conjunto de dados
(entrada) para obter outro conjunto de dados ou resultados
(sada).
Exemplos
dar baixa, no talo de cheques, de um cheque emitido
procurar um nmero de telefone na lista telefnica e anot-lo em uma
caderneta
somar valores de compras no supermercado
classificar vrias contas e pag-las em ordem de data de vencimento

Elementos Bsicos
Dados iniciais - informaes iniciais sujeitas a certas transformaes
Transformaes - modificaes efetuadas no contedo ou na forma dos
dados iniciais
Resultados finais - produto dos dados iniciais aps as transformaes
2

Arquitetura e organizao de
computadores
Processamento eletrnico de dados
Processamento de dados com a utilizao do computador

Vantagens

processa grande volume de dados com rapidez


trata grandes quantidades de informao com segurana
realiza clculos com exatido
oferece grande disponibilidade de acesso s informaes armazenadas
pode ser programado
3

Arquitetura e organizao de
computadores
Dado
Informao que ser trabalhada durante o processamento
Exemplos
10 (idade), 12 x 8 (presso arterial), 1.99 (altura em metros)

Instruo
Operao elementar que o computador tem a capacidade
de processar
Trabalha com os dados
Ordens executadas pelo computador
Exemplos

instrues para entrada e sada (E/S) de dados


instruo de movimentao de dados (transferncia)
instrues aritmticas
instruo de comparao
etc
4

Arquitetura e organizao de
computadores
Programa
roteiro que orienta o computador, mostrando-lhe a seqncia de operaes
necessrias para executar uma determinada tarefa
seqncia de instrues que dirigem a CPU na execuo de alguma tarefa
composto por uma srie de comandos ou instrues

Hardware
conjunto de componentes mecnicos, eltricos e eletrnicos com os quais so
construdos os computadores e equipamentos perifricos

Software
conjunto de programas e procedimentos que permitem usufruir da
capacidade de processamento fornecida pelo hardware

Organizao funcional
Sistema Central
Unidade Central de Processamento
(UCP/CPU/microprocessador)
Unidade de Controle
Unidade Aritmtica e Lgica

Clock
Memria Principal
Interfaces

Unidades de Entrada e Sada (E/S)


6

Organizao funcional
SISTEMA CENTRAL
UCP

CLOCK
UNIDADE
ARITMTICA
E LOGICA

Barramento

MEMORIA
PRINCIPAL

UNIDADE
DE
CONTROLE
MICROPROCESSADOR

Barramento
INTERFACE

INTERFACE

...

...

PERIFERICO

PERIFERICO

Unidades
de
Entrada e Sada (E/S)

Software
Software
Um programa que um computador usa para
funcionar.
Mantido em algum dispositivo de hardware como
um disco rgido, mas, por si s, intangvel.
Dados que um computador utiliza.

Programas
Agem como instrues para o processador.

Software
Tipos de Programas de Computador:
Programas de Sistemas: so necessrios para
manter sistemas de hardware e software
executando juntos em harmonia.
Programas Aplicativos: utilizados para realizar
tarefas.
Compiladores: Traduzem programas de linguagem
humana para a linguagem de mquina.

Linguagens de programao
Linguagem de Programao
Tcnica de comunicao padronizada para enviar
instrues a um computador.
Assim como a linguagem humana, cada linguagem
tem sua prpria sintaxe e gramtica.
Existem diferentes tipos de linguagem de
programao que podem ser utilizados para
criao de programas.

Categorias de Linguagens de
Programao
Linguagens de Programao de Alto Nvel
mais amigvel ao usurio
O programa dever ser traduzido atravs de um
compilador
Exemplos: Java, C, C++, Basic, Fortran

Linguagens de Montagem de Baixo Nvel


Similares s linguagens de mquina
So mais simples e permitem a um programador substituir
nomes por nmeros
Linguagens de montagem esto disponveis para cada
famlia de CPU

Ciclo de vida de
desenvolvimento de um
programa

Definir um problema
Um problema bem definido metade de uma
soluo.
Programas de computador requerem que
primeiro entendamos o problema para depois
tentarmos criar uma soluo.
Definindo o problema exemplo:
Crie um programa que determine o nmero
de vezes que um nome ocorre em uma lista

Analisar o problema
Este passo envolve a quebra do problema em
subproblemas menores e mais simples
Problema Exemplo:
Determinar o nmero de vezes que um nome ocorre
em uma lista

Entrada do programa:
lista de nomes;
nome procurado.

Sada do programa:
o nmero de vezes que o nome ocorre na lista

Projetar e representar o
algoritmo
Uma especificao clara e no contraditria
dos passos necessrios para resolver um
problema.
Deve ser representada em:
Linguagem humana (Ingls, Tagalog, portugus)
Representaes grfica como o fluxograma.
Pseudocdigo - que uma mistura entre a
linguagem humana e a linguagem de
programao.

Projetar e representar o
algoritmo Ling.Humana
1. Obter a lista de nomes, vamos cham-la de NomeLista
2. Obter o nome a ser procurado, vamos cham-lo de
NomeChave
3. Criar um contador, vamos cham-lo de Conta
4. Pegar cada nome em NomeLista
5. Se NomeChave for igual ao nome selecionado em
NomeLista
6. Adicionar 1 a Conta
7. Repetir 4 at que todos os nomes j tiverem sido
comparados.
8. Exibir o valor de Conta.

Projetar e representar o
algoritmo - Fluxograma

Smbolos do fluxograma
Smbolo de
processo

Smbolo de
entrada / sada

Smbolo de
conector

Smbolo de
deciso

Smbolo de
incio / fim

Smbolo de
fluxo

Projetar algoritmo Pseudocdigo

Codificar e Depurar
Depois de construir o algoritmo, possvel
criar o cdigo fonte. Utilizando as bases do
algoritmo, o cdigo fonte pode ser escrito com
a utilizao de qualquer linguagem de
programao.
Processo de Depurao (Debug)
o processo de localizao e acerto de erros
(bugs) no programa.

Tipos de Erros
Erros de Compilao ou Erros de Sintaxe
Ocorrem quando existem erros de sintaxe no programa
O compilador ir detectar o erro e o programa no ser
compilado
O programador estar impossibilitado de gerar um
programa executvel at que ele conserte o erro

Erros de Execuo
Compiladores no so perfeitos e no podem detectar
todos os erros de compilao
Isto especialmente verdadeiro nos erros de lgica como
os laos de repetio infinitos
Este tipo de erro chamado erro de execuo

Java
Criada em 1991 por James Gosling da Sun
Microsystems
Chamada inicialmente de OAK (Carvalho)
Mudado para Java

Java - Histria
Motivao inicial para o Java
O primeiro projeto desenvolvido utilizando
Java era o *7 (Star Seven)
Gosling e outros achavam que Java poderia
ser utilizada para programao na Internet

Tecnologia Java

Uma linguagem de programao


Um ambiente de desenvolvimento
Um ambiente de aplicao
Um ambiente de distribuio

JVM? JRE? JDK? O que devo


baixar?

O que gostaramos de baixar no site da Oracle/Sun?

JVM = apenas a virtual machine, esse download no existe, ela sempre vem
acompanhada.

JRE = Java Runtime Environment, ambiente de execuo Java, formado pela JVM e
bibliotecas, tudo que voc precisa para executar uma aplicao Java. Mas ns
precisamos de mais.

JDK = Java Development Kit: Ns, desenvolvedores, faremos o download do JDK do


Java SE (Standard Edition). Ele formado pela JRE somado a ferramentas, como o
compilador.

Tanto o JRE e o JDK podem ser baixados do site http://java.sun.com, hoje


gerenciado pela Oracle. Para encontr-los, acesse o link Java SE dentro dos top
downloads. Consulte o apndice de instalao do JDK para maiores detalhes.

Java Linguagem de
Programao
Pode ser utilizada para criar todos os tipos de
aplicaes
De programas de Inteligncia Artificial para
Robs at programas para aparelhos celulares

Java Ambiente de
Desenvolvimento
Fornece um grande conjunto de ferramentas,
tais como:
Compilador (executvel javac.exe)
Interpretador (executvel java.exe)
Gerador de documentos (executvel javadoc.exe)
Empacotamento de classes e arquivos (executvel
jar.exe)

Java Ambiente de aplicao e


distribuio
Programas que rodam em uma mquina onde
o Java Runtime Environment (JRE) instalado
H dois ambientes de distribuio principais:
1. JRE
2. Navegador web

Java Ambiente de aplicao e


distribuio

Java Mquina Virtual Java

Java Garbage Collection


Responsvel por liberar espao em memria
Programador liberado dessa
responsabilidade

Java Segurana do Cdigo


Cdigo seguro alcanado em Java atravs da
implementao da Java Runtime Environment
(JRE)
JRE
Rodar cdigos compilados para a JVM
Executar classes carregadas (atravs do Class
Loader)
Verificar o cdigo (atravs do verificador de
bytecode)

Java Segurana do Cdigo


Class Loader
Responsvel por carregar todas as classes necessrias
ao programa Java.
Separao dos namespaces entre arquivos local e os
importados pela rede.
Layout de memria do executvel eterminado

Verificador de Bytecode
Testar o formato dos fragmentos de cdigo.
Pesquisar em fragmentos de cdigo por cdigos
ilegais.

Java fases de um programa

Java fases de um programa

Definies
Console
onde se inserem comandos.

Exemplos:
Terminal (Linux).
Prompt de comando (Windows).

Definies
Editor de Texto
Exemplos:
Windows: Notepad, Wordpad.
Linux: Vi, gedit.

Ambiente de Desenvolvimento Integrado ou IDE


um software aplicativo que prov:

um construtor de interfaces GUI.


um editor de cdigos
um compilador e/ou interpretador.
um depurador.

Primeiro programa
public class Hello {
/**
* Meu primeiro programa Java
*/
public static void main(String[] args)
{
// Mostra a mensagem Hello world
System.out.println("Hello world");
}
}

Usando o editor de texto e a


console

Passo 1: Iniciar o editor


Passo 2: Abrir a janela de console
Passo 3: Escrever as instrues utilizando o editor de texto
Passo 4: Salvar seu programa Java
Nome do arquivo: Hello.java
Nome da pasta: MYJAVAPROGRAMS

Passo 5: Entrar na pasta que contm o programa


Passo 6: Compilar o programa
-javac Hello.java

Passo 7: Executar o programa


java Hello

Erros Erros de sintaxe


Erros de sintaxe
Normalmente gerados por digitao incorreta

Erros de sintaxe comuns:


Digitao incorreta de comando Java
Esquecer de colocar ponto-e-vrgula ao final da
declarao

Erro Erro de sintaxe

Erro de sintaxe

Erros: Erro em tempo de


execuo
Erro em tempo de execuo
So erros que aparecero enquanto o programa
estiver sendo executado
Programas compilados com sucesso, que
apresentaro respostas erradas, se o programador
no obedeceu a lgica dos processamentos e as
estruturas do programa

Usando o Eclipse
Passo 1: Executar o Eclipse
Passo 2: Construir o Projeto

Usando o Eclipse
Passo 3: Escrever o programa

Usando o Eclipse
Passo 4: Compilar o projeto
Passo 5: Executar o projeto

Entendendo meu primeiro


programa
public class Hello {
/**
* Meu primeiro programa Java
*/
public static void main(String[] args) {
// Mostra a mensagem Hello world
System.out.println("Hello world");
}
}

Entendendo meu primeiro


programa
public class Hello {
/**
* Meu primeiro programa Java
*/

O nome da classe Hello


Em Java todo e qualquer cdigo deve pertencer a
uma classe
Esta classe usa um identificador de acesso public.
Indica que est acessvel para outras classes de
diferentes pacotes (pacotes so colees de classes)
A chave { e indica o incio de um bloco de instrues

Entendendo meu primeiro


programa
/**
* Meu primeiro programa Java
*/
As prximas 3 linhas indicam um comentrio em Java
Um comentrio:
Explicao usada para a documentao do cdigo
No faz parte do programa em si, mas sim de sua
documentao
uma boa prtica de programao adicionar comentrios
aos programas

Entendendo meu primeiro


programa
public static void main(String[] args) {
A linha acima indica a declarao de um
mtodo em Java, neste caso, o mtodo main
O mtodo main o ponto de partida dos
programas em Java.
Todos os programas, com exceo de applets,
escritos em Java, se iniciam pelo mtodo
main.

Entendendo meu primeiro


programa
A linha seguinte um comentrio de linha
// Mostra a mensagem Hello world
A instruo System.out.println(), mostra, na sada padro, o
texto descrito entre as aspas
System.out.println("Hello world");
}
}
As ltimas duas linhas, que contm somente uma chave em
cada, simbolizam, respectivamente, o fechamento do
mtodo main e da classe

Comentrio em Java
Notas escritas para fins de documentao
Estas notas no fazem parte do programa e
no afetam seu fluxo
Java possui 3 tipos de comentrios:
Comentrio de linha
Comentrio de bloco
Comentrio estilo Javadoc

Instrues e blocos em Java


Uma instruo composta de uma ou mais
linhas terminadas por ponto-e-vrgula.
Exemplo:
System.out.println(Hello world);

Instrues e blocos em java


Um bloco formado por uma ou mais instrues
agrupadas entre chaves { } indicando que formam uma
s unidade.
Blocos podem ser organizados em estruturas
aninhadas indefinidamente
Qualquer quantidade de espaos em branco
permitida.
Exemplo:
public static void main (String[] args) {
System.out.println("Hello");
System.out.println("world);
}

Identificadores em Java
Identificadores so representaes de nomes
de variveis, mtodos, classes, etc
Exemplos de identificadores podem ser: Hello,
main, System, out
Os identificadores so case-sensitive.
Isto significa que o identificador Hello no o
mesmo que hello.

Identificadores em Java
Iniciam com Letra (A-Z, a-z), Underscore _,
ou Sinal de cifro $.
Aos caracteres subsequentes adicionam
nmeros (0-9).
No pode utilizar nomes iguais as palavraschave.

Palavras reservadas em Java


Palavras-chave so identificadores prdefinidos e reservados por Java para
propsitos especficos

Tipos de dados em Java

Variveis
Uma varivel um espao na memria usado
para armazenar o estado de um objeto
Uma varivel possui:
Tipo que indica o tipo de dado que ela pode conter
Nome que deve seguir as regras para
identificadores

Declarando e inicializando
variveis
< tipo do dado > < nome > [ = valor inicial ];
Exemplo:
public class VariableSamples {
public static void main( String[] args ){
boolean result;
char option;
option = 'C';
double grade = 0.0;
}
}

Exibindo o valor de uma varivel


Para exibir na tela, ou em outro dispositivo, o valor de uma
varivel, pode-se fazer uso das seguintes instrues:
System.out.println()
System.out.print()

public class OutputVariable {


public static void main(String[] args)
{
int value = 10;
char x;
x = 'A';
System.out.println(value);
System.out.println("The value of x=" + x);
}
}

Tipos primitivos e valores


Esses tipos de variveis so tipos primitivos do Java: o valor que elas
guardam so o real contedo da varivel. Quando voc utilizar o operador
de atribuio = o valor ser copiado.
int i = 5; // i recebe uma cpia do valor 5
int j = i; // j recebe uma cpia do valor de i
i = i + 1; // i vira 6, j continua 5

Aqui, i ca com o valor de 6. Mas e j? Na segunda linha, j est valendo 5.


Quando i passa a valer 6, ser que j tambm muda de valor? No, pois o
valor de um tipo primitivo sempre copiado.
Apesar da linha 2 fazer j = i, a partir desse momento essas variveis no
tem relao nenhuma: o que acontece com uma, no reete em nada com
a outra.

Exerccios variveis e tipos


primitivos
1.

Na empresa onde trabalhamos, h tabelas com o quanto foi gasto


em cada ms. Para fechar o balano do primeiro trimestre,
precisamos somar o gasto total. Sabendo que, em Janeiro, foram
gastos 15000 reais, em Fevereiro, 23000 reais e em Maro, 17000
reais, faa um programa que calcule e imprima o gasto total no
trimestre. Siga esses passos:
a)
b)
c)
d)

Crie uma classe chamada BalancoTrimestral com um bloco main;


Dentro do main (o miolo do programa), declare uma varivel inteira
chamada gastosJaneiro e inicialize-a com 15000;
Crie tambm as variveis gastosFevereiro e gastosMarco,
inicializando-as com 23000 e 17000, respectivamente, utilize uma
linha para cada declarao;
Crie uma varivel chamada gastosTrimestre e inicialize-a com a soma
das outras 3 variveis:
int gastosTrimestre = gastosJaneiro + gastosFevereiro + gastosMarco;

e)

Imprima a varivel gastosTrimestre.

Discusso em aula
Convenes de cdigo e cdigo legvel

Referncia de variveis e
Valor de variveis
Temos dois tipos de acesso suportados:
Valor
armazenam dados no exato espao de memria onde a varivel
est.

Referncia
armazenam o endereo de memria onde o dado est
armazenado
Referncia de variveis:
Exemplo
Supondo que existam estas duas variveis dos tipos int e String
(varivel de classe).
int num = 10;
String nome = "Hello"

Referncia de variveis:
Exemplo
O quadro abaixo representa a memria do
computador, com seus endereos de memria, o nome
das variveis e os tipos de dados nela armazenados

Operadores
Os diferentes tipos de operadores so:
Operadores aritmticos
Operadores relacionais
Operadores lgicos
Operadores condicionais

Estes operadores obedecem uma ordem de


precedncia para que o compilador saiba em
qual sequencia executar as operaes

Operadores Aritmticos

Operadores de incremento e
decremento

Operadores de incremento e
decremento
Os operadores de incremento e decremento podem ser
usados tanto antes quanto aps o operando
Quando usado antes do operando, provoca o acrscimo ou
decrscimo de seu valor antes da avaliao da expresso
em que este operador utilizado
Por exemplo:
int i = 10;
int j = 3;
int k = 0;
k = ++j + i; //resultar em k = 4+10 = 14
int x = 10;
int y = 3;
int a = x++ + y; //resultar em a = 3+10 = 13

Operadores relacionais
Os operadores relacionais so usados para comparar
dois valores e determinar o relacionamento entre eles
A sada desta avaliao ser dada com um valor lgico:
true ou false

Operadores lgico
Operadores lgicos avaliam um ou dois
operandos lgicos e resultam em um nico valor
lgico: true ou false
Os operadores lgicos so seis:

&& (e lgico)
& (e binrio)
|| (ou lgico)
| (ou binrio)
^ (ou exclusivo binrio)
! (negao)

Operadores lgicos
&& (e lgico) e & (e binrio)

|| (ou lgico) e | (ou binrio)

! (negao)

^ (ou exclusivo binrio)

Precedncia de Operadores

Exerccios
Qual o resultado da expresso complexa:
6%2*5+4/2+88-10

Capturando entrada de dados


pelo teclado - API
Interfaces de Programao de Aplicaes, ou
Application Programming Interface (API)
contm centenas de classes pr-definidas que
se pode utilizar nos programas.
Classes so organizadas dentro do que
chamamos de pacotes.
Pacotes contm classes que se relacionam
com um determinado propsito.

Capturando entrada de dados


pelo teclado
Algumas formas para entrada de dados:
Atravs da Classe Scanner
Atravs da Classe JOptionPane

Usando a classe Scanner


public class EntradaDados {
public static void main(String ...args){
String nome;
int idade;
double peso;
Scanner sc = new Scanner(System.in);
System.out.println("Digite o seu nome: ");
nome = sc.nextLine();
System.out.println("Digite a sua idade: ");
idade = sc.nextInt();
System.out.println("Digite o seu peso: ");
peso = sc.nextDouble();
System.out.println(nome+", "+idade+", "+peso);
}
}

Usando a Classe JOptionPane


import javax.swing.JOptionPane;
public class MInhaString {
public static void main(String ...args){
String nome,sIdade,sPeso;
int idade;
double peso;
nome = JOptionPane.showInputDialog("Digite seu nome: ");
sIdade = JOptionPane.showInputDialog("Digite sua idade: ");
sPeso = JOptionPane.showInputDialog("Digite seu peso: ");
idade = Integer.parseInt(sIdade);
peso = Double.parseDouble(sPeso);
System.out.println(nome+", "+idade+", "+peso);
}
}

Exerccios
1)Faa um programa que leia a idade de uma pessoa expressa em
anos, meses e dias e mostre-a expressa apenas em dias.
2) Faa um programa que leia dois valores nas variveis A e B
respectivamente, troque o valor contido na varivel A pelo valor em
B, e o valor em B pelo valor em A, isto , imprimiremos A e B com os
valores trocados.
3) Faa um programa que leia cinco nmeros inteiros, calcule e
escreva a soma, o produto e a mdia dos nmeros lidos.
4) Faa um programa que leia o nmero do funcionrio, o nmero de
horas trabalhadas mensais, o valor que recebe por hora e o nmero
de filhos com idade menor de 14 anos. Calcular e escrever o salrio
deste funcionrio, sendo que cada filho menor de 14 anos acrescenta
10% do salrio.

Estruturas de Controle
Permitem mudana na ordem da execuo
dos programas.
Tipos:
Deciso
Repetio

Estruturas de
Controle de Deciso
Permitem executar blocos especficos de
instrues.
Tipos:
Declaraes if
Declaraes if-else
Declaraes If-else-if
Declaraes switch

Declarao if
if (expresso_lgica)
instruo_em_caso_verdadeiro;
int grade = 68;
if (grade > 60)
System.out.println("Congratulations!");

Declarao if/else
if (expresso_lgica) {
instrues_caso_TRUE;
} else {
instrues_caso_FALSE;
}

int grade = 68;


if( grade > 60 )
System.out.println("Congratulations!");
else
System.out.println("Sorry you failed");

If/else/if
if (expresso_lgica1)
instruo1;
else if (expresso_lgica2)
instruo2;
else
instruo3;
public class Grade {
public static void main( String[] args ) {
double grade = 92.0;
if (grade >= 90) {
System.out.println("Excellent!");
} else if((grade < 90) && (grade >= 80)) {
System.out.println("Good job!");
} else if((grade < 80) && (grade >= 60)) {
System.out.println("Study harder!");
} else {
System.out.println("Sorry, you failed.");
}
}
}

Declarao switch
switch (varivel_inteira) {
case valor1:
instrues_bloco1; break;
case valor2:
instrues_bloco2;break;
case valor3:
instrues_bloco3;
break;
default:
instrues_blocoDefault;
}

Exemplo switch
public class Grade {
public static void main( String[] args ) {
int grade = 92;
switch(grade){
case 100:
System.out.println("Excellent!");
break;
case 90:
System.out.println("Good job!" );
break;
case 80:
System.out.println("Study harder!" );
break;
default:
System.out.println("Sorry, you failed.");
}
}
}

Exerccios
1)Escrever um algoritmo para ler dois valores numricos e apresentar a diferena do
maior pelo menor.

2)Tendo como dados de entrada a altura e o sexo de uma pessoa, construa um


algoritmo para calcular seu peso ideal, utilizando as seguintes frmulas:
para homens:
para mulheres:

72,7 * altura 58;


62,1 * altura 44,7

3)Elabore um algoritmo que, dada a idade de um nadador, classifique-o em uma das


seguintes categorias:

Infantil A: 5 a 7 anos;
Infantil B: 8 a 10 anos;
Juvenil A: 11 a 13 anos;
Juvenil B: 14 a 17 anos;
Snior: maiores de 18 anos.

Estruturas de Controle de
Repetio
Permitem executar especficos trechos de
cdigo diversas vezes
Tipos:
while
do-while
for

Declarao while
while (expresso_lgica)
instrues_enquanto_verdadeiro;

int x = 0;
while (x<10) {
System.out.println(x);
x++;
}

Declarao do-while
do {
instruo1;
instruo2;
...
} while (expresso_lgica);

int x = 0;
do {
System.out.println(x);
x++;
}while (x<10);

Declarao for
for (declarao_inicial; expresso_lgica; salto) {
instruo1;
instruo2;
...
}
for (int i = 0; i < 10; i++) {
System.out.println(i);
}
As instrues mostradas acima so equivalentes ao
seguinte lao while:
int i = 0;
while (i < 10) {
System.out.print(i);
i++;
}

Declarao de Interrupes
Permitem redirecionar o fluxo de controle de um programa
Java oferece trs declaraes de interrupo:
break
continue
Return
break
Encerra uma declarao switch e o fluxo de controle passa para a instruo
seguinte
Utilizado para terminar declaraes for, while, ou do-while
continue
Retorna para o fim do corpo do lao interno e avalia a expresso lgica que o
controla, saltando o restante das instrues deste lao
return
Abandona o mtodo atual
Fluxo de controle retorna para o local de chamada do mtodo

Exemplos
for (int i=0; i < names.length; i++) {
if (names[i].equals(searchName)) {
foundName = true;
break;
}
}
for (int i=0; i<names.length; i++) {
if (!names[i].equals("Beah")) {
continue; // interrompe o fluxo
}
count++;
}
for (int i=0; i < names.length; i++) {
if (names[i].equals(searchName)) {
return i;
}
}

Exerccios
1)Imprima todos os nmeros de 150 a 300.
2) Imprima a soma de 1 at 1000.
3) Imprima todos os mltiplos de 3, entre 1 e 100.
4) Imprima os fatoriais de 1 a 10.
O fatorial de um nmero n n * n-1 * n-2 ... at n = 1.
Lembre-se de utilizar os parnteses.
O fatorial de 0 1
O fatorial de 1 (0!) * 1 = 1
O fatorial de 2 (1!) * 2 = 2
O fatorial de 3 (2!) * 3 = 6
O fatorial de 4 (3!) * 4 = 24
Faa um for que inicie uma varivel n (nmero) como 1 e
fatorial (resultado) como 1 e varia n de 1 at 10:
for (int n = 1, fatorial = 1; n <= 10; n++) {
}

Introduo aos Arrays


Suponha que tenhamos trs variveis do tipo int com
diferentes identificadores para cada varivel
int number1;
int number2;
int number3;
number1 = 1;
number2 = 2;
number3 = 3;
Podemos utilizar uma varivel para armazenar e manipular uma lista de dados de
forma mais eficiente. Este tipo de varivel chamada de array
Um array armazena mltiplos itens de dados do mesmo tipo em um bloco
contnuo de memria, dividido-o em certa quantidade de casas

Declarando e criando Arrays


Escreve-se o tipo de dado seguido por colchetes e por um
identificador
int [] ages;
ou
int ages[];
Criar o array e especificar seu tamanho com um parmetro
no construtor
// declarao
int ages[];
// construindo um objeto
ages = new int[100];
ou
// declarando e construindo um objeto
int ages[] = new int[100];

Criando arrays
Pode-se, tambm, construir um array ao inici-lo diretamente com dados
int arr[] = {1, 2, 3, 4, 5};
Este cdigo declara e inicializa um array de inteiros com cinco elementos
(inicializados com os valores 1, 2, 3, 4, e 5)

Exemplos:
boolean results[] = { true, false, true, false };
double [] grades = {100, 90, 80, 75};
String days[] = {"Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"};

Acessando elementos do Array


Utilizar um nmero chamado de ndice
ndice numrico
Atribudo a cada elemento do array
Permite o acesso individual a seus elementos
Iniciado com zero e progride seqencialmente at o fim do array
ndices dentro de um array vo de 0 at (tamanhoDoArray - 1)
int ages[] = new int[100];
ages[0] = 10;
System.out.print(ages[99]);
O valor armazenado de cada elemento do array ser inicializado com zero para
arrays com o tipo de dado numrico
Para referenciar os elementos em arrays de objetos, como as Strings, estes NO
sero inicializados com brancos ou strings vazias "". Em vez disso, deve-se
preencher explicitamente cada elemento deste array

Acessando elementos do Array


public class ArraySample{
public static void main( String[] args ){
int[] ages = new int[100];
for( int i=0; i<100; i++ ){
System.out.print( ages[i] );
}
}
}
Utilizar o atributo length para se obter o nmero de elementos de um array
O atributo length de um array retorna seu tamanho
nomeArray.length
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] );
}
}
}

Das könnte Ihnen auch gefallen