Aracılığıyla paylaş


Do...Loop Deyimi (Visual Basic)

While ifadelerini öbeğini yineler bir Boolean durum True veya koşul oluncaya kadar True.

Do { While | Until } condition
    [ statements ]
    [ Continue Do ]
    [ statements ]
    [ Exit Do ]
    [ statements ]
Loop
-or-
Do
    [ statements ]
    [ Continue Do ]
    [ statements ]
    [ Exit Do ]
    [ statements ]
Loop { While | Until } condition

Bölümleri

Terim

Tanım

Do

Gerekli.Tanımını başlatır Do döngü.

While

Gerekli olmadıkça Until kullanılır.Kadar döngüyü condition olan False.

Until

Gerekli olmadıkça While kullanılır.Kadar döngüyü condition olan True.

condition

İsteğe Bağlı.Booleanifade.condition Olan Nothing, Visual Basic onu düşünür False.

statements

İsteğe Bağlı.Çalışırken veya kadar yinelenen bir veya birden çok deyimleri condition olan True.

Continue Do

İsteğe Bağlı.Denetim bir sonraki yineleme için aktarır Do döngü.

Exit Do

İsteğe Bağlı.İşyeri aktarır Do döngü.

Loop

Gerekli.Tanımını sonlandırır Do döngü.

Notlar

Kullanımı bir Do...Loop yapı, istediğiniz kadar bir kez bir koşul sağlanırsa kadar deyimleri kümesini yinelemek istediğinizde.Birkaç kez, ifadeleri yinelemek istiyorsanız için...Sonraki ifade genellikle daha iyi bir seçimdir.

Ya da kullanmak While veya Until belirtmek için condition, ancak her ikisini birden değil.

Test edebilirsiniz condition tek bir anda, başlangıç veya döngü sonundan.Test, condition döngünün baþýndaki (de Do deyimi), döngü bile bir kez çalışmayabilir.Döngünün sonunda test ederseniz (de Loop deyimi), döngünün her zaman en az bir kez çalıştırılır.

Koşul genellikle iki değer karşılaştırmadan sonuçlanır, ancak sonucunu veren bir ifade olabilir bir Boole Veri Türü (Visual Basic) değeri (True veya False).Bu değerler için dönüştürülen sayısal türler gibi diğer veri türlerini içerir Boolean.

İç içe geçirebilirsiniz Do döngü içinde başka bir döngü koyarak.Farklı türde denetim yapıları birbirinin içinde iç içe yerleştirebilirsiniz.Daha fazla bilgi için bkz. İç İçe Geçmiş Denetim Yapıları (Visual Basic).

[!NOT]

Do...Loop Yapısını kıyasla daha çok esneklik sağlar While...End While Deyimi (Visual Basic) döngünün sona erdirmek karar vermenize olanak sağladığından, condition yüklenmesini durdurur True ya da ne zaman ilk olacağını True.Ayrıca, sınama sağlar condition başlangıç veya döngü sonundan.

Exit

Çıkmak yapmak deyimi, çıkmak için alternatif bir yol sağlayabilir bir Do…Loop.Exit Dodenetimi hemen izleyen deyimini aktarır Loop ifadesi.

Exit DoBazı koşul örnekte değerlendirilir sonra sık sık kullanılan bir If...Then...Else yapısı.Gereksiz veya hatalı bir değer veya sonlandırma isteği gibi yineleme devam etmek mümkün kılan koşul algılama bir döngü çıkmak isteyebilirsiniz.Bir kullanım Exit Do neden olabilecek bir koşulu test etmek için bir sonsuz döngüye, bir büyük ya da hatta sonsuz sayıda çalıştırılabilir bir döngü olduğunu.Kullanabileceğiniz Exit Do döngü kaçış için.

Herhangi bir sayıda içerebilir Exit Do deyimlerinde herhangi bir yerde bir Do…Loop.

Kullanıldığı zaman içinde iç içe Do halkalar, Exit Do denetimini en içteki döngü dışında ve daha yüksek düzeydeki iç içe içe aktarır.

Örnek

Aşağıdaki örnekte, döngü deyimleri kadar çalışmaya devam index değişkeni 10'dan büyük.Until Yan tümcesi döngünün sonunda olur.

Dim index As Integer = 0
Do
    Debug.Write(index.ToString & " ")
    index += 1
Loop Until index > 10

Debug.WriteLine("")
' Output: 0 1 2 3 4 5 6 7 8 9 10 

Aşağıdaki örnek bir While yan tümcesi yerine bir Until yan tümcesi ve condition sonunda yerine döngünün baþýndaki sınanır.

Dim index As Integer = 0
Do While index <= 10
    Debug.Write(index.ToString & " ")
    index += 1
Loop

Debug.WriteLine("")
' Output: 0 1 2 3 4 5 6 7 8 9 10 

Aşağıdaki örnekte, condition döngüyü durdurur, index 100'den fazla değişken.If Döngü deyimi ancak neden Exit Do index deðiþkeni 10'dan büyük olduğunda Döngüyü durdurmak için deyimi.

Dim index As Integer = 0
Do While index <= 100
    If index > 10 Then 
        Exit Do 
    End If

    Debug.Write(index.ToString & " ")
    index += 1
Loop

Debug.WriteLine("")
' Output: 0 1 2 3 4 5 6 7 8 9 10 

Aşağıdaki örnek, bir metin dosyasındaki tüm satırları okur.OpenText Yöntemi dosya açılır ve döndürür bir StreamReader , karakterleri okur.De Do...Loop koşulu, Peek yöntemi, StreamReader herhangi bir ek karakter olup olmadığını belirler.

Private Sub ShowText(ByVal textFilePath As String)
    If System.IO.File.Exists(textFilePath) = False Then
        Debug.WriteLine("File Not Found: " & textFilePath)
    Else 
        Dim sr As System.IO.StreamReader = System.IO.File.OpenText(textFilePath)

        Do While sr.Peek() >= 0
            Debug.WriteLine(sr.ReadLine())
        Loop

        sr.Close()
    End If 
End Sub

Ayrıca bkz.

Başvuru

For...Next Deyimi (Visual Basic)

Boole Veri Türü (Visual Basic)

Exit Deyimi (Visual Basic)

While...End While Deyimi (Visual Basic)

Kavramlar

Çevrim Yapıları (Visual Basic)

İç İçe Geçmiş Denetim Yapıları (Visual Basic)