Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Kısa açıklama
continue deyiminin program akışını hemen bir program döngüsünün, switch deyiminin veya trap deyiminin en üstüne nasıl döndürdüğü açıklanır.
Uzun açıklama
continue deyimi, tamamen çıkmak yerine sadece geçerli denetim bloğundan çıkıp yürütmeye devam etmek için bir yol sağlar. deyimi etiketleri destekler.
Etiket, betikteki bir deyime atadığınız addır.
Döngülerde devam et'i kullanma
Etiketlenmemiş continue deyimi, program akışını hemen bir for, foreach, doveya while deyimi tarafından kontrol edilen en içteki döngünün başına geri döndürür. Döngünün geçerli yinelemesi sonlandırılır ve döngü sonraki yinelemeyle devam eder.
Aşağıdaki örnekte, while değişkeni 5'e eşitse program akışı $ctr döngüsünün en üstüne döner. Sonuç olarak, 5 dışında 1 ile 10 arasındaki tüm sayılar görüntülenir:
while ($ctr -lt 10)
{
$ctr += 1
if ($ctr -eq 5)
{
continue
}
Write-Host -Object $ctr
}
for döngüsü kullanılırken yürütme, <Repeat> deyiminde devam eder ve ardından <Condition> testini izler. Aşağıdaki örnekte, $i anahtar sözcüğünün ardından continue'ın azalması gerçekleştiği için sonsuz bir döngü olmaz.
# <Init> <Condition> <Repeat>
for ($i = 0; $i -lt 10; $i++)
{
Write-Host -Object $i
if ($i -eq 5)
{
continue
# Will not result in an infinite loop.
$i--
}
}
Döngüde etiketli continue kullanımı
Etiketlenmiş continue deyimi, yinelemenin yürütülmesini sonlandırır ve denetimi hedeflenen kapsayıcı yinelemeye veya switch deyimi etiketine aktarır.
Aşağıdaki örnekte,
:labelA for ($i = 1; $i -le 10; $i++) {
:labelB for ($j = 1; $j -le 10; $j++) {
:labelC for ($k = 1; $k -le 10; $k++) {
if ($condition) {
continue labelB
} else {
$condition = Update-Condition
}
}
}
}
Switch deyiminde continue kullanma
Bir continue içindeki etiketsiz switch deyimi, geçerli switch yinelemesinin yürütülmesini sonlandırır ve sonraki giriş öğesini almak için denetimi switch'ün en üstüne aktarır.
Tek bir giriş öğesi olduğunda, continue tüm switch ifadesini sonlandırır.
switch girişi bir koleksiyon olduğunda, switch koleksiyonun her öğesini sınar.
continue geçerli yinelemeden çıkar ve switch sonraki öğeyle devam eder.
switch (1,2,3) {
2 { continue } # moves on to the next element, 3
default { $_ }
}
1
3
Yakalama deyiminde continue kullanma
Gövde içinde yürütülen son deyim trap deyimi continueise, yakalanan hata sessizce görmezden gelinir ve yürütme, trap'nin oluşmasına neden olan deyimin hemen ardından devam eder.
Devam'ı döngü, anahtar veya yakalama dışında kullanmayın
Bu, onu destekleyen bir kapalı yapı dışında yanlışlıkla bir
continue Betik bloğu gibi bir ForEach-Object işlem hattının içinde kullanılması işlem hattından çıkmakla olmaz, aynı zamanda çalışma alanının tamamını da sonlandırabilir.
Ayrıca bakınız
PowerShell