Upload
regis-magalhaes
View
648
Download
2
Embed Size (px)
Citation preview
2
Estruturas de Controle
➔ Fluxo de controle e repetição Seleção: If-else, switch-case Iteração: while, do-while, for Interrupção: break, continue, rotulos.
3
Estruturas de Controle
➔ Fluxo de controle e repetição if – else
if (expressão) {comandos;
}
if (expressão) { comandos;} else { comandos;}
int idade = 15; if (idade < 18) { System.out.println("Inválida"); } int idade = 15;
if (idade < 18) { System.out.println("Inválida"); } else { System.out.println("OK"); }
4
Fluxo de controle e Repetição
➔ if – else
int idade = 15; boolean amigoDoDono = true; if (idade < 18 & amigoDoDono == false) { System.out.println("Inválido"); } else { System.out.println("OK"); }
int idade = 15; boolean amigoDoDono = true; if (idade < 18 & !amigoDoDono) { System.out.println("Inválido"); } else { System.out.println("OK"); }
5
Estruturas de Controle
➔ Fluxo de controle e repetição if – else
int mes = 1; if (mes == 1) { System.out.println("Janeiro"); }
6
Operadores de Curto Circuito
// Avalia a expr. algumaCoisa if (true | algumaCoisa) { // ... }
➔ && e || Param de verificar as outras condições booleanas
quando percebem que o resultado não mudará mais.
// NÃO avalia a expr. algumaCoisa if (true || algumaCoisa) { // ... }
7
Estruturas de Controle
➔ Fluxo de controle e repetição switch-case
Sintaxe:
switch(seletor inteiro) { case inteiro1 : comandos; break; case inteiro2 : comandos; break; // ... default: comandos; }
8
Estruturas de Controle
➔ Fluxo de controle e repetição While – laço condicional
Itera enquanto a expressão for verdadeira Avalia a expressão antes de iterar Sintaxe:
while (expressão) { comandos; }
int idade = 15; while(idade < 18) { System.out.println(idade); idade = idade + 1; }
9
Estruturas de Controle
➔ Laço contado - for
for (inicializacao; condicao; incremento) { codigo; }
for (int i = 0; i < 10; i++) { System.out.println("olá!"); }
int i = 0; while (i < 10) { System.out.println(“olá!”); i = i + 1; }
10
Estruturas de Controle
➔ Controlando loops break continue
for (int i = x; i < y; i++) { if (i % 19 == 0) { System.out.println(i); break; }}
for (int i = 0; i < 100; i++) { if(i > 50 && i < 60) { continue; } System.out.println(i); }
11
Escopo das variáveis
//aqui a variável i não existe int i = 5; // a partir daqui ela existe while (condicao) { // o i ainda vale aqui int j = 7; // o j passa a existir } // aqui o j não existe mais, // mas o i continua a valer
➔ Nome dado ao trecho de código em que a variável existe e é possível acessá-la. Ao abrir um novo bloco com chaves, as variáveis
declaradas ali só valem até o fim do bloco.
12
Escopo das variáveis
for (int i = 0; i < 10; i++) { System.out.println("olá!"); } System.out.println(i); // cuidado!
int i; for (i = 0; i < 10; i++) { System.out.println("olá!"); } System.out.println(i);
13
Blocos Aninhados
while (condicao) { for (int i = 0; i < 10; i++) { // código } }
14
Referências e Recursos
➔ Livros Apostila Caelum – Java e Orientação a Objetos -
FJ11 Object-Oriented System Development: HTML Edition
http://g.oswego.edu/dl/oosdw3/ Software Engineering (5th Edition) – Ian Sommerville Object-Oriented Analysis and Design with
Applications – Grady Booch Object-Oriented Software Engineering: A Case
Driven Approach – Ivar Jacobson Thinking in Java, 3rd ed. Revision 4.0 – Bruce Eckel
http://www.mindview.net/Books/TIJ/
➔ Web http://www.argonavis.com.br/cursos/java/j100/index.html