No Perl, posso pular uma iteração foreach (ou qualquer loop) com um next;
comando.
Existe uma maneira de pular uma iteração e pular para o próximo loop em c #?
foreach (int number in numbers)
{
if (number < 0)
{
// What goes here to skip over the loop?
}
// otherwise process number
}
Respostas:
Você quer:
Aqui está mais sobre a
continue
palavra - chave .Atualização: em resposta à pergunta de acompanhamento de Brian nos comentários:
A
continue
sempre se aplica ao escopo envolvente mais próximo, portanto você não pode usá-lo para interromper o loop mais externo. Se surgir uma condição como essa, você precisará fazer algo mais complicado, dependendo exatamente do que deseja, comobreak
no loop interno e depoiscontinue
no loop externo. Veja aqui a documentação sobre abreak
palavra - chave . Abreak
palavra-chave C # é semelhante àlast
palavra-chave Perl .Além disso, considere usar a sugestão de Dustin para filtrar previamente os valores que você não deseja processar:
fonte
goto
é realmente útil para a situação que @Brian está perguntando. Adicione um rótulo, comonextArray:
na parte inferior do loop externo, egoto nextArray;
quando desejar pular para ele.Outra abordagem é filtrar usando LINQ antes da execução do loop:
fonte
Você também pode inverter o seu teste if:
fonte
fonte
Você pode usar a
continue
declaraçãoPor exemplo:
fonte
Outra abordagem usando o linq é:
Se você quiser pular o primeiro de vários itens.
Ou use
.SkipWhere
se desejar especificar uma condição para ignorar.fonte
Use a instrução continue:
fonte
A maneira mais fácil de fazer isso é como abaixo:
fonte