Loops rotulados
Publicado por Fagner Amaral de Souza Candido (última atualização em 22/02/2011)
[ Hits: 8.366 ]
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; } } } }
Como fazer um automato em Java
Colocando informações em variáveis
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Wifi não funciona no Aspire ES 15 com o Debian (8)
Como atualizar o Debian 8 para o 10 (10)
Dica sobre iptables ACCEPT e DROP (6)
NGNIX - Aplicar SNAT para evitar roteamento assimetrico (29)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta