[C-Sharp] Sair de todos os loops

20/10/2016

0

Eu sei que o "break;" sai do loop atual, como faço para sair de dentro de todos os loops caso esse loop esteja dentro de outro?

Ex:

foreach(var x in lista)
{
foreach(var y in x.lista)
{
break;
}
}
Victor Machado

Victor Machado

Responder

Post mais votado

20/10/2016

Tenho duas soluções aqui.

Usar goto
foreach(var x in lista)
{
foreach(var y in x.lista)
{
if(i == j)
goto END;
}
}

END: fazalgo(); //ou deixa vazio e vai continuar o código normalmente


Eu por exemplo não tenho nada contra goto, mas é amplamente odiado pela comunidade.

Então poderia mover o loop inteiro para um método à parte e depois usar um return para retornar a variável pela qual está procurando.

Mas o que você quer fazer, dependendo do que for, pode fazer sem esses loops aninhados, que eu pessoalmente faço de tudo para evitar

Lucas Campos

Lucas Campos
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar