Sdílet prostřednictvím


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)

Koncepty

Struktury (Visual Basic)

Vnořené struktury řízení (Visual Basic)