Continuo na minha jornada pela SCJP e me deparei com um assunto que não esta nda claro para mim. Fiz uma busca aki no guj e um pouco no google, achei tópicos mas não consegui entender.
Gostaria de saber comno funcionam detalhadamente os labeled loops (loops rotulados), pois não entendi mto bem. Será que alguem poderia me dar alguns exemplos e explicando-os, por favor??
boolean isTrue = true;
outer:
for(int i=0; i<5; i++) {
/** loop mais proximo do break */while (isTrue) {
System.out.println("Hello");
break outer;
} // end of inner while loop
System.out.println("Outer loop."); // Won't print
} // end of outer for loop
System.out.println("Good-Bye");
Olha esse exemplo no livro da kathy
O break outer serve pra garantir q vai sair do loop com o label(o primeiro, neste caso), sem o outer(apenas o break) sairia do loop mais proximo do break(while(isTrue))…
nao sei se fui muito claro heheh
flw
cs.santos0
huum…vlw a ajuda.
Gostaria de saber qual a diferença entre o break e o continue rotulado…quando eu devo usar um ou outro…??..essa é minha maior dúvida com relação a isso.
Alguem poderia me esclarecer???
Obrigado
nbluis
o Break para a iteração, já o continue faz ele ir diretamente para a proxima iteração.
Ex.
Ele vai imprimir apenas os números ímpares, pois o if testa isso.
Agora o fato de ser rotulado, é para poder manusear isso em loops aninhados.
cs.santos0
o break e continue não rotulado eu sei como funciona.
eu não entendo a diferença deles quando são rotulados. Q o break faz saltar para fora do loop rotulado eu entendi…mas e o continue, faz saltar para onde??..qual a diferença dos dois??