Loops rotulados
Publicado por Fagner Amaral de Souza Candido (última atualização em 22/02/2011)
[ Hits: 8.730 ]
Homepage: https://github.com/fagnercandido
Olá PessoALL,
Novamente na minha jornada pela certificação OCJP, coisas interessantes que pude constatar que a linguagem Java proporciona. Confesso que até mesmo estranhas.
Desta vez, a surpresa fica por conta do loop rotulado. Isso meu caro, você não leu errado, é rotulado. Certo, isso remete a goto... Calma, não é goto, mas bem que parece...
Enfim, o loop rotulado tem por objetivo sair de loops que estejam em um nível de aninhamento muito grande. Cria-se um rótulo, seguido por dois pontos, e cria-se o loop. Dentro do loop, com as instruções break e continue você chama o rótulo.
O código abaixo ilustra bem este conceito. O mesmo faz uso tanto com o break, quanto com o continue, vale a pena rodar com ambos e tirar suas conclusões.
Qualquer dúvida, sugestão ou crítica serão bem-vindos,
f_Candido
fagner7777777@gmail.com
@fagner_candido
/*
Sintese :
Objetivo : Demonstrar o uso de Loops rotulados
Entrada : /
Saída : /
Autor : f_Candido fagner7777777@gmail.com @fagner_candido
*/
class LoopRotulado{
public static void main(String[] args){
/*
Loop Externo, expressão rotulado
*/
loopExterno:
for(int contador = 0; contador < 5; contador++){
for(int auxiliar = 0; auxiliar < 5; auxiliar++){
System.out.println("Auxiliar : "+auxiliar);
System.out.println("Contador : "+contador);
/*
Aqui ocorre a mágica, as instruções break e continue
fazem com que o loop seja reavalidado ou lido novamente
*/
//break loopExterno;
continue loopExterno;
}
}
}
}
Exemplo de POO usando conceitos de calorimetria em Java
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como automatizar sua instalação do Ubuntu para desenvolvimento de software.
Consertando o áudio com som ruim no Pipewire
Como implementar Raid (0, 1, 5, 6, 10 e 50)
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Servidor Ubuntu 24.04 HD 500 não tenho espaço na \home\adminis... (1)
Como programar um sistema de controle para distribuições linux em c? (3)









