ola pessoal estou estudando a apostila da caelum e lá pede para fazer um pesquisa sobre labeled loops … eu gostaria de saber o que são eles ? para que servem ? como e quando usa-los ? poderiam me ajudar …
O que é um labeled loop?
24 Respostas
São loops com um label (rotulo), para que possam ser identificados, seria como dar nome a um loop, é usado principalmente em loops aninhados para que você possa usar um break, continue, etc, dentro de um loop interno e afetar um loop externo, ex.:
primeiroloop:
for(int i=0;i<10;i++){
segundoloop:
for(int j=0;j<10;j++){
if(alguma_condicao){
break primeiroloop;
}
}
}
Veja que o break está dentro do segundo for, mas ele vai parar o primeiro.
http://java.sun.com/docs/books/tutorial/java/nutsandbolts/branch.html
Interessantee sta Caelum, e este Forum, os posts de 2007 estão servindo muito bem rpa mim hoje em 2011. Obrigado!
Eternamente grato a todo !
Interessantee sta Caelum, e este Forum, os posts de 2007 estão servindo muito bem rpa mim hoje em 2011. Obrigado!Eternamente grato a todo !
Sem querer floodar mas tenho que abrir esse parenteses aqui. Cara estudo na Caelum estou fazendo formação java e realmente SANTA CAELUM! O ensino lá é ótimo, somos tratados com individualidade e não apenas como uma turma, la somos pessoas e não numeros. E quanto ao GUJ conhecia antes de ir estudar lá, e depois que fiquei sabendo que a CAELUM quem comanda a barca aqui, fiquei mais fã ainda desse fórum imenso.
OBRIGADO CAELUM!! E um salve para o Toshi, meu professor. O cara manda muito!
E quem diria, 6 anos depois, em 2013, esse tópico de 2007 ainda esta sendo muit bom pra mim.
Dê uma lida nisto
O uso deles é raro, mas muito util quando é necessário
estou com a caelum fj-11
e este post me ajudou tbm agora em 2013
muito obrigado
Concordo com os amigos acima. Estou estudando as apostila da Caelum Java F-11 e este tópico me esclareceu sobre o assunto muito bem. Obrigado amigos!
E viva Caelum e GUJ! Continua ajudando hehehe
Estou estudando uma apostila do SENAI e foi pedido a mesma coisa. E me ajudou agora em 2014. Obrigado, mesmo após anos o tópico ainda ajuda os estudantes.
E quem diria, 8 anos depois, em 2015, esse tópico de 2007 ainda esta sendo muito bom pra mim.
Obrigado …
Puxa, hoje, em 2017, 10 anos depois, ainda está sendo útil. Muito obrigado!!!
Hehe.
Brincadeiras à parte…muito bom o material da Caelum, e a dúvida esclarecida também, direto ao ponto.
Obrigado pessoal.
Uma Java tem uma capacidade incrível de resistir ao tempo, em 2025 ainda vai ter legado em Java funcionando.
Incrível
Não conheço nenhum outro fórum melhor que este… assuntos e dúvidas abordados há anos mas, até hoje em pleno 2016 ainda existe e ajuda pessoas como eu… que estão conhecendo as maravilhas de java hoje.
Gostara é de conhecer pessoalmente e aprender com este engenheiro que escreveu este fórum… gostaria de ser discípulo deste grande homem!
Opa boa tarde galera esse post me ajudou muito, Abraços a todos e ate mais ver, ha estou em 2016
Ajudou no meu auto-estudo, haha. E este é meu primeiro post no GUJ! (primeiro de muitos)
Quem diria eu, em 2016 
Excelente resposta, muito obrigado.
obrigada pela a ajuda !!
Reforçando o que jaireltonPj publicou irei colocar um código em java que na prática irá explicar essa questão do labeled. Espero que Ajude:
package br.com.caelum.apostilapoo;
import javax.swing.JOptionPane;
public class Pg29labeled {
public static void main(String[] args) {
// vamos criar um pequeno exemplo de labeled em java para melhor
// concretizarmos esse conceito -- espero que ajude...
// 1º vamos criar uma variável x que irá receber um número para
// verificação
// variável inteira x que irá receber o primeiro valor
int x;
// variável inteira y que irá receber o segundo valor
int y;
// aqui iremos captar o valor digitado no teclado por meio do objeto
// JOptionPane
// convertendo-o para um tipo de dado inteiro a mesma coisa acontace com
// o y
x = Integer.parseInt(JOptionPane.showInputDialog("Digite Um Valor x -->>"));
y = Integer.parseInt(JOptionPane.showInputDialog("Digite Um Valor y -->>"));
// primeiro rótulo labeled
primeiroloop:
// primeiro laço de repetição i recebe x primeiro valor digitado
// e irá até y segundo valor digitado
for (int i = x; i <= y; i++) {
// em seguida por meio do System.out metodo de saída irá
// imprimir na tela o valor inicial digitado para x
System.out.println("primeiroloop i-->>" + i);
//aqui já no fim dos testes terminamos quando i==y
if (i == y) {
//imprime
System.out.println("fim break");
//para o software
break;
}
// segundo rótudo labeled
segundoloop:
// no segundo laço j recebe o valor inicial digitado x
// e faz a sua repetição até o valor final digitado y
for (int j = x; j < y; j++) {
//faz um varredura nos valores de x a y novamente mais quando
//chegar em 7 ele entra na condicional
System.out.println("Testando segundoloop-->>" + j);
// condicional se j==7 então
if (j == 7) {
// imprime
System.out.println("J chegou no 7 continue primeiroloop-->>");
//e continua (retorna) para o primeiro loop
continue primeiroloop;
}
}
}
}
}
Só pra compartilhar com os entusiastas acima, 2017 e ainda útil, kkk.
Java sempre Java, vlw guj…
Só registrando minha visita enquanto estudo no Alura.com o módulo Java I =)
Info ainda mega válida em 23/03/2017.
Tkx guys!
Só pra deixar minha marca aqui.
E falar que esse fórum é muito bom e me ajuda muito.
Um abraço para todos.
2017 E me ajudando