Será que alguém pode me explicar bem detalhadamente em que contexto é utilizado o comando break e o comando return?
Obrigada
Essa é qual questão da sua lista de exercicios? a 2?
Pq acho que respondi a 1 no outro topico… :roll:
Essa é a numero 7.KKKKK
break é akela dança que os bboy fazem nos show de rap
return ja é mais estilo michael jackson! pa trais "sacumé "?
Use o break pra sair de uma laço e o return para sair de um método. E não, isso não é uma boa explicação, mas isso é a diferença básica, que você deve estar vendo agora. O resto pesquisando no google deves achar com facilidade.
Obrigada Daniels!!!
[code]public class Mes {
public static void main(String[] args){
switch (i)
{
case 1:
System.out.println (“Janeiro”);
break;
case 2:
System.out.println (“Fevereiro”);
break;
case 3:
System.out.println (“Marco”);
break;
case 4:
System.out.println (“Abril”);
break;
default:System.out.println ("Nao e valido");
}
}
}
} [/code]
Nesse caso, se vc entrar com o valor “1”, irar imprimir no console “Janeiro”. Isso pq tem o break.
Se não tivesse o break no final de cada case, ele iria continuar lendo a próxima linha e seria impresso os outros meses no console. Sendo que o certo é somente o “Janeiro” já que o usuário entrou com o valor 1. Pra isso que serve o break! =)
E o return é utilizado, por exemplo, quando vc quer salvar algo no banco de dados e depois de salvo, vc deseja retornar uma mensagem para o usuário dizendo que os dados foram salvos com sucesso.
Obrigada Fer!!!
po eu tb mereço um obrigado =~
ta loco nao se tem mais senso de humor
Obrigada pra vc tbém Filipe!!!
break interrompe um for, while ou do-while ou evita o fall-through em switches.for (int i = 1; i <= 10; i++) { // Percorre de 1 a 10.
System.out.println(i); // Escreve o número
if (i == 6) break; // Mas, pára no 6.
}
Isso escreve 1, 2, 3, 4, 5 e 6.
O laço vai de 1 a 10, mas o break o interrompe antes dele terminar, quando chega no 6.
Para while e do-while, o funcionamento é o mesmo que no for. O break faz ele parar na hora.
int i = ...;
switch (i) {
case 1:
System.out.println("A");
break;
case 2:
System.out.println("B");
break;
case 3:
System.out.println("C");
// NÃO TEM BREAK AQUI!!!!
case 4:
System.out.println("D");
break;
case 5:
System.out.println("E");
// E NEM AQUI!!!!
case 6:
System.out.println("F");
// E NEM AQUI!!!!
default:
System.out.println("X");
}
Se i for 1, ele escreve A e sai do switch (é o que o break faz).
Se i for 2, escreve B e sai do switch por causa do break.
Se i for 3, escreve C, NÃO SAI DO SWITCH e continua (isso se chama fall-through), imprime D também.
Se i for 4, escreve D e sai do switch por causa do break.
Se i não for qualquer número entre 1 e 6, escreve X (default significa “nenhuma das outras alternativas”) e o switch acaba.
Se i for 6, escreve F, fall-through, escreve X e acaba o switch.
Se i for 5, escreve E, fall-through, escreve F, fall-through de novo, escreve X e acaba o switch.
Para o return de um método void:private void a(int x) {
System.out.println("AA");
if (x == 5) return;
System.out.println("BB");
}
Se você chamar o método com qualquer valor diferente de 5, ele escreve AA e BB.
Porém se você chamar com o valor 5, ele escreve AA e o return faz ele cair fora, não escreve BB.
Para métodos não void, o return devolve (retorna) um valor:[code]private void teste() {
int x = calcula(1);
System.out.println(x);
x = calcula(2);
System.out.println(x);
}
private int calcula(int b) {
if (b == 1) return 5;
System.out.println(“oi”);
return 7;
}[/code]O método teste chama calcula duas vezes. Na primeira passa-lhe o valor 1. O método calcula então retorna 5 (não escreve “oi”) e o método teste escreve 5, que foi o que calcula lhe retornou.
Na segunda vez, é passado o valor 2, o método calcula escreve “oi” e retorna 7, então teste escreve 7.
Obrigada Victor!Esclarecedor.
Abraços