Controle de Fluxo - Parte l

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (0)  (0)

Para quem está acompanhando os artigos sobre a certificação, nesse ponto será abordado sobre controle de fluxo.

 

Para quem está acompanhando os artigos sobre a certificação, nesse ponto será abordado sobre controle de fluxo. Sabemos que o controle de fluxo é fundamental em qualquer linguagem, então para a certificação você precisa estar interado totalmente no assunto. Para aqueles que não acompanharam os outros arquivos aqui segue os links.

 

Orientação a Objetos - Parte I

Orientação a Objetos - Parte II

Declaração e Controle de Acesso Parte I

Declaração e Controle de Acesso – Parte II

 

IF - ELSE

O comando IF é comum em muitas linguagens de programação, sua função é verificar se uma condição é verdade ou falsa. Assim como mostra o código abaixo.

 

if (2 > 1) {

      System.out.println(“É maior”);

}

 

Olhando assim parece ser fácil? Mas pode ter certeza que não será cobrado assim no exame. Pode ter certeza se eles puderem complicar a sua vida eles irão complicar.

 

int i = 10;

if (i > 10) {

if (i == 10) {

System.out.println(“x igual a 10”); }

else if (i == i++) {

System.out.println(“i menor que 10”); }

else {

System.out.println(“i não é menor que 10”); }

     

 

Complicou um pouco? Qual seria o resultado? Seria muito mais fácil se o código estivesse como o código abaixo.

 

int i = 10;

if (i > 10) {

      if (i == 10) {

            System.out.println(“x igual a 10”);

}

else if (i == i++) {

      System.out.println(“i menor que 10”);

}

else {

      System.out.println(“i não é menor que 10”);

}

 

Ai sim você diria com toda aquela certeza que o resultado é NADA, pois a primeira condição é FALSE e não tenho nenhum ELSE que gere um resultado. Veja todos os ELSE que existe é referente ao segundo IF. Preste muito atenção nos IF aninhados, com certeza isso pode te pegar.

 

Falamos que o IF verifica apenas uma condição booleana, então caso veja esse tipo de coisa no exame pode ter certeza que está errado e gerará um erro de compilação.

 

if (10 = 5) { ... } //Aqui gera um erro de compilação

else { ... }

 

Mas e caso você encontre isso?

 

boolean x = false;

if (x = true) {System.out.println(“Isso pode?!?”);}

else {System.out.println(“Isso não pode?!?”)}

 

O código apresentado acima irá compilar perfeitamente por que (x = true) é uma atribuição e isso é perfeitamente válido.

 

SWITCH

O comando switch também é utilizado para verificação de valores, mas existe alguns detalhes que você precisa saber, tais como o switch só poderá ser aplicado a variáveis int, short, byte e char. Portanto qualquer tentativa de usar com variáveis boolean, long, double, flout e um objeto resultará em um erro de compilação.

 

Veja no código abaixo um exemplo clássico do uso do switch.

 

int x = 3;

switch (x) {

Case 1 : {

System.out.println(“x vale 1”);

break;

}

case 2:

System.out.println(“x vale 2”);

break;

default:

System.out.println(“x é maior que 2”);

break;

}

 

Lembre-se que não é obrigatório o uso das chaves, isso é opcional, porém o break é necessário, pois caso seja omitido o fluxo seguirá normalmente como você pode ver no código seguinte.

 

int x = 2;

switch (x) {

case 1 : {

System.out.println(“x vale 1”);

System.out.println(“x vale 1”);

break;

}

case 2:

System.out.println(“x vale 2”);

break;

default:

System.out.println(“x é maior que 2”);

System.out.println(“x é maior que 2”);

break;

}

 

O resultado deste código é:

 

x vale 2
x é maior que 2
x é maior que 2

 

Pois entrará case 2 e como o próprio não tem o break o fluxo segue normalmente.

Outro detalhe que você deve lembrar quando se trata do comando switch é que não deve haver cases igual e não pode omitir os parênteses da variável.

 

Na próxima parte do nosso artigo iremos continuar sobre while, do while, for, for-each, break, continue e instruções rotuladas. Espero vocês!!

 

Fabiano Fernandes

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?