İstediğiniz:
foreach (int number in numbers) // <--- go back to here --------+
{ // |
if (number < 0) // |
{ // |
continue; // Skip the remainder of this iteration. -----+
}
// do work
}
continueAnahtar kelime hakkında daha fazla bilgi .
Güncelleme: Brian'ın yorumlardaki takip sorusuna yanıt olarak:
Döngüler için iç içe geçmiş olsaydım ve genişletilmiş olanlardan birinin yinelemesini atlamak istersem ne yapacağımı daha açıklayabilir misiniz?
for (int[] numbers in numberarrays) {
for (int number in numbers) { // What to do if I want to
// jump the (numbers/numberarrays)?
}
}
A continueher zaman en yakın çevreleme kapsamı için geçerlidir, bu nedenle en dıştaki döngüden çıkmak için kullanamazsınız. Böyle bir durum ortaya çıkarsa break, iç döngüden, ardından continuedış döngüden tam olarak ne istediğinize bağlı olarak daha karmaşık bir şey yapmanız gerekir . breakAnahtar kelime ile ilgili belgeler için buraya bakın . breakC # anahtar kelime Perl benzer lastanahtar kelime.
Ayrıca, önceden işlemek istemediğiniz değerleri filtrelemek için Dustin'in önerisini almayı düşünün:
foreach (var basket in baskets.Where(b => b.IsOpen())) {
foreach (var fruit in basket.Where(f => f.IsTasty())) {
cuteAnimal.Eat(fruit); // Om nom nom. You don't need to break/continue
// since all the fruits that reach this point are
// in available baskets and tasty.
}
}