Při...Ukončit při výpisu (Visual Basic)
Řada příkazů se spustí danou podmínku je True.
While condition
[ statements ]
[ Continue While ]
[ statements ]
[ Exit While ]
[ statements ]
End While
Části
Termín |
Definice |
condition |
Povinné.Booleanvýraz.Pokud condition je Nothing, Visual Basic, považuje ji za False. |
statements |
Nepovinné.Jeden nebo více následujících příkazech While, který při každém spuštění condition je True. |
Continue While |
Nepovinné.Další opakování předá řízení While bloku. |
Exit While |
Nepovinné.Řízení z While bloku. |
End While |
Povinné.Ukončí vymezení While bloku. |
Poznámky
Použití While...End While struktury, když chcete opakovat sadu příkazů je libovolně časy, zůstává podmínku True.Pokud chcete s kde otestovat podmínku nebo co je výsledek větší flexibilitu otestovat pro můžete Proveďte...Příkaz LOOP (Visual Basic).Pokud chcete opakovat příkazy nastavení počtu opakování a Pro...Další příkaz (Visual Basic) je obvykle lepší volbou.
[!POZNÁMKA]
While Klíčové slovo je používán také Proveďte...Příkaz LOOP (Visual Basic), Přeskočit při klauzule (Visual Basic) a Přijmout při klauzule (Visual Basic).
Pokud condition je True, vše z statements spustit až End While prohlášení je zjištěna.Řízení se vrátí While prohlášení, a condition je znovu zkontrolovat.Pokud condition stále True, proces se opakuje.Pokud má False, řízení průchodů následující prohlášení End While prohlášení.
While Prohlášení vždy kontroluje stav před spuštěním smyčky.Opakování pokračuje, zatímco podmínka zůstane True.Pokud condition je False při prvním zadání smyčky nespustí ještě jednou.
condition Obvykle výsledky srovnání dvou hodnot, ale může být jakýkoli výraz, jehož výsledkem Datový typ Boolean (Visual Basic) hodnoty (True nebo False).Tento výraz může obsahovat jiný typ dat, například číselný typ, který byl převeden na hodnotu Boolean.
Můžete vnořit While smyčky umístěním jednoho smyčky v rámci jiného.Různé druhy řízení struktur v rámci vzájemně můžete také vnořit.Další informace naleznete v tématu Vnořené struktury řízení (Visual Basic).
Při ukončení
Ukončit při prohlášení může poskytnout jiným způsobem, jak ukončit While smyčky.Exit Whileprohlášení, která následuje ihned předá řízení End While prohlášení.
Obvykle používají Exit While po některá podmínka je vyhodnocena (například v If...Then...Else struktury).Můžete ukončit smyčky, pokud rozpoznat podmínku, která usnadňuje zbytečným nebo nemožným pokračovat iterace jako chybné hodnoty nebo požadavek na ukončení.Můžete použít Exit While při testování pro podmínku, která by mohla způsobit nekonečnou smyčku, která smyčka, který by mohl spustit extrémně velké nebo dokonce nekonečné udává, kolikrát je.Můžete použít Exit While k návratu smyčky.
Můžete vytvořit libovolný počet Exit While příkazy kdekoli v While smyčky.
Při použití v rámci vnořené While smyčky, Exit While řízení a vnitřní smyčku z další vyšší úrovně vnoření.
Continue While Prohlášení neprodleně předá řízení další opakování smyčky.Další informace naleznete v tématu Pokračovat v prohlášení (Visual Basic).
Příklad
V následujícím příkladu příkazy ve smyčce nadále spuštěn až index proměnné je větší než 10.
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
Následující příklad ukazuje použití Continue While a Exit While příkazy.
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
Následující příklad načte všechny řádky v textovém souboru.OpenText Metoda otevře soubor a vrátí StreamReader , čte znaky.V While stav, Peek metodu StreamReader Určuje, zda soubor obsahuje další znaky.
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
Viz také
Referenční dokumentace
Proveďte...Příkaz LOOP (Visual Basic)
Pro...Další příkaz (Visual Basic)
Datový typ Boolean (Visual Basic)
Ukončení příkazu (Visual Basic)
Pokračovat v prohlášení (Visual Basic)