De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Ricardo Takemura
Data de Publicação: 18 de março de 2019
Uma vez me perguntaram: como sair de dois loops dando um break?
Bem, eu sei que em Java é bem simples... É só dar um "labeling break":
public class Main { public static void main(String[] args) { saidaqui: for (int i = 0; i < Integer.MAX_VALUE; i++) { for (int j = 0; j < Integer.MAX_VALUE; j++) { System.out.println(i + ":" + j); if (j % 10 == 9) { break saidaqui; } } } } }
Com isso, quando o break executar, ele irá parar os dois loops (pois o label indica para ele sair do loop mais externo).
A mesma coisa pode ser feita em um loop/switch:
public class Main { public static void main(String[] args) { saidaqui: for (int i = 0; i < Integer.MAX_VALUE; i++) { switch (i) { case 9: System.out.println("Vai sair"); if (true) { break saidaqui; } break; default: System.out.println("Index: " + i); } } } }
Estranho, não?
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários