Condividi tramite


Istruzione While...End While (Visual Basic)

Consente di eseguire una serie di istruzioni purché la condizione sia True.

While condition
    [ statements ]
    [ Exit While ]
    [ statements ]
End While

Parti

Argomento

Definizione

condition

Obbligatoria. Espressione Boolean. Se la condition è Nothing, Visual Basic la considera False.

statements

Facoltativo. Una o più istruzioni basate su While, eseguite ogni volta che condition è True.

Exit While

Facoltativo. Trasferisce il controllo all'esterno del blocco While.

End While

Obbligatoria. Termina la definizione del blocco While.

Note

Utilizzare una struttura While...End While quando si desidera ripetere un gruppo di iistruzioni un numero infinito di volte, fino a quando la condizione rimane True. Se si desidera una maggiore flessibilità su dove verificare la condizione o per quale risultato si esegue il test, è possibile scegliere l'Istruzione Do...Loop (Visual Basic). Per ripetere le istruzioni un numero di volte definito, l' Istruzione For...Next (Visual Basic) costituisce generalmente una scelta migliore.

Se condition è True, tutte le statements vengono eseguite fino a quando non viene rilevata l'istruzione End While. Il controllo ritorna quindi all'istruzione While e la condition viene nuovamente verificata. Se condition è ancora True, il processo verrà ripetuto. Se è False, il controllo passa all'istruzione che segue l'istruzione End While.

Nota

La parola chiave While viene utilizzata anche nell'Istruzione Do...Loop (Visual Basic), nella Clausola Skip While (Visual Basic) e nella Clausola Take While (Visual Basic).

Regole

  • Natura della condizione. La condizione è in genere il risultato di un confronto tra due valori, ma può anche essere una qualsiasi espressione che restituisca un valore Tipo di dati Boolean (Visual Basic) (True o False). Sono compresi i valori di altri tipi di dati, come i tipi numerici, convertiti in Boolean.

  • Verifica della condizione. L'istruzione While verifica sempre la condizione prima di iniziare il ciclo. Il looping continua mentre la condizione rimane True.

  • Numero di iterazioni. Se condition è False quando si inizia il ciclo la prima volta, l'esecuzione non avviene nemmeno una volta.

  • Cicli annidati. È possibile annidare cicli While inserendo un ciclo all'interno di un altro. È inoltre possibile annidare strutture di controllo di tipo diverso inserendone una all'interno di un altra. Per ulteriori informazioni, vedere Strutture di controllo annidate (Visual Basic).

  • Trasferimento all'esterno del ciclo. L'Istruzione Exit (Visual Basic) trasferisce immediatamente il controllo all'istruzione che segue l'istruzione End While. È possibile uscire da un ciclo se si rileva una condizione che rende inutile o impossibile continuare a scorrere, quale un valore erroneo o una richiesta di interruzione. È possibile inserire un numero illimitato di istruzioni Exit While in qualsiasi punto del ciclo While. L'istruzione Exit While viene spesso utilizzata dopo la valutazione di alcune condizioni, ad esempio in una struttura If...Then...Else.

  • Cicli senza termine. L'istruzione Exit While può essere utilizzata per eseguire un controllo su una condizione che potrebbe generare un ciclo infinito, vale a dire un ciclo che potrebbe essere eseguito per un numero di volte estremamente elevato o persino infinito. Se si rileva una simile condizione, è possibile utilizzare Exit While per interrompere l'esecuzione del ciclo. Per ulteriori informazioni, vedere Istruzione Do...Loop (Visual Basic).

Esempio

Nell'esempio riportato di seguito viene utilizzata la struttura While...End While per incrementare una variabile contatore. Le istruzioni nel ciclo vengono eseguite fintano che la condizione restituisce True.

Dim counter As Integer = 0
While counter < 20
    counter += 1
    ' Insert code to use current value of counter.
End While
MsgBox("While loop ran " & CStr(counter) & " times")

Vedere anche

Riferimenti

Istruzione Do...Loop (Visual Basic)

Istruzione For...Next (Visual Basic)

Tipo di dati Boolean (Visual Basic)

Istruzione Exit (Visual Basic)

Concetti

Strutture di ciclo (Visual Basic)

Strutture di controllo annidate (Visual Basic)