While...End While Deyimi (Visual Basic)
Verilen bir koşul olduğu sürece bir dizi deyimi çalıştırır True.
While condition
[ statements ]
[ Continue While ]
[ statements ]
[ Exit While ]
[ statements ]
End While
Bölümleri
Terim |
Tanım |
condition |
Gerekli.Booleanifade.condition Olan Nothing, Visual Basic onu düşünür False. |
statements |
İsteğe Bağlı.İfadeleri aşağıdakilerden bir veya daha fazla While, her zaman Çalıştır condition olan True. |
Continue While |
İsteğe Bağlı.Denetim bir sonraki yineleme için aktarır While blok. |
Exit While |
İsteğe Bağlı.İşyeri aktarır While blok. |
End While |
Gerekli.Tanımını sonlandırır While blok. |
Notlar
Kullanımı bir While...End While yapısı bir koşul kaldığı sürece istediğiniz kadar bir kaç kez, deyimleri kümesini yinelemek istediğinizde, True.Burada koşul sınamak veya ne neden daha fazla esneklik test bunu tercih edebilirsiniz için isterseniz, Do...Loop Deyimi (Visual Basic).Birkaç kez, ifadeleri yinelemek istiyorsanız For...Next Deyimi (Visual Basic) genellikle daha iyi bir seçimdir.
[!NOT]
While Anahtar sözcüğünü kullanılan de Do...Loop Deyimi (Visual Basic), Skip While Tümcesi (Visual Basic) ve Take While Tümcesi (Visual Basic).
condition Olan True, tüm, statements kadar çalışma End While deyimi varıldığında.Denetlemek için verir While deyimi, ve condition yeniden denetlenir.condition Hala True, işlem yinelenir.Varsa False, aşağıdaki deyimi Denetim End While ifadesi.
While Döngü başlamadan önce koşul ifadesi her zaman denetler.Döngü devam koşulu kalırken True.condition Olan False bile bir kez döngü ilk girdiğinizde çalıştırmaz.
condition Genellikle iki değer, ancak bir karşılaştırma sonuçları değerlendiren herhangi bir ifade olabilir bir Boole Veri Türü (Visual Basic) değeri (True veya False).Bu ifade için dönüştürülen bir sayısal tür gibi başka bir veri türünde bir değer içerebilir Boolean.
İç içe geçirebilirsiniz While yerleştirerek bir döngü içinde başka bir döngü.Denetim yapıları içinde birbirinden farklı türde iç içe yerleştirebilirsiniz.Daha fazla bilgi için bkz. İç İçe Geçmiş Denetim Yapıları (Visual Basic).
Çıkış sırasında
Çıkış sırasında deyimi, çıkmak için başka bir yol sağlayabilir bir While döngü.Exit Whilehemen aşağıdaki deyimi denetim aktarır End While ifadesi.
Genellikle kullandığınız Exit While bazı durum değerlendirilir sonra (örneğin, 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.Kullanabileceğiniz Exit While neden olabilecek bir koşulu test ne zaman bir sonsuz döngüye, bir çok büyük ya da hatta sonsuz sayıda çalıştırılabilir bir döngü olduğunu.Daha sonra Exit While döngü kaçış için.
Herhangi bir sayıda yerleştirebilirsiniz Exit While deyimlerinde herhangi bir yerde While döngü.
Kullanıldığı zaman içinde iç içe While halkalar, Exit While denetimini en içteki döngü dışında ve daha yüksek düzeydeki iç içe içe aktarır.
Continue While İfadesi hemen sonraki döngü için Denetim aktarır.Daha fazla bilgi için bkz. Continue Deyimi (Visual Basic).
Örnek
Aşağıdaki örnekte, döngü deyimleri kadar çalışmaya devam index değişkeni 10'dan büyük.
Dim index As Integer = 0
While index <= 10
Debug.Write(index.ToString & " ")
index += 1
End While
Debug.WriteLine("")
' Output: 0 1 2 3 4 5 6 7 8 9 10
Aşağıdaki örnek kullanımını göstermektedir Continue While ve Exit While deyimleri.
Dim index As Integer = 0
While index < 100000
index += 1
' If index is between 5 and 7, continue
' with the next iteration.
If index >= 5 And index <= 8 Then
Continue While
End If
' Display the index.
Debug.Write(index.ToString & " ")
' If index is 10, exit the loop.
If index = 10 Then
Exit While
End If
End While
Debug.WriteLine("")
' Output: 1 2 3 4 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 While koşulu, Peek yöntemi, StreamReader dosyasına ek karakterleri içerip içermediğini 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)
While sr.Peek() >= 0
Debug.WriteLine(sr.ReadLine())
End While
sr.Close()
End If
End Sub
Ayrıca bkz.
Başvuru
Do...Loop Deyimi (Visual Basic)
For...Next Deyimi (Visual Basic)
Boole Veri Türü (Visual Basic)
Continue Deyimi (Visual Basic)