Instrucción While...End While (Visual Basic)

Ejecuta una serie de instrucciones siempre que una condición dada sea True.

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

Partes

Término

Definición

condition

Obligatorio. Expresión Boolean. Si condition es Nothing, Visual Basic la trata como False.

statements

Opcional. Una o más instrucciones a continuación de While, que se ejecutan cada vez que condition es True.

Exit While

Opcional. Transfiere el control fuera del bloque While.

End While

Obligatorio. Termina la definición del bloque While.

Comentarios

Utilice una estructura While...End While si desea repetir un conjunto de instrucciones un número indefinido de veces, siempre que una condición sea True. Si desea más flexibilidad con respecto a la ubicación donde prueba la condición o al resultado para el que la prueba, quizá prefiera Instrucción Do...Loop (Visual Basic). Si desea repetir las instrucciones un número fijo de veces, Instrucción For...Next (Visual Basic) suele ser mejor opción.

Si condition es True, se ejecutan todas las statements hasta que se encuentra la instrucción End While Después, el control vuelve a la instrucción While y se comprueba de nuevo condition. Si condition aún es True, se repite el proceso. Si es False, el control pasa a la instrucción que sigue a la instrucción End While.

Reglas

  • Naturaleza de la condición. Generalmente, la condición es el resultado de comparar dos valores, pero también puede ser cualquier expresión que da como resultado un valor Boolean (Tipo de datos, Visual Basic) (True o False). Esto incluye los valores de otros tipos de datos, como los numéricos, que han sido convertidos a valores de tipo Boolean.

  • Probar la condición. La instrucción While comprueba siempre la condición antes de iniciar el bucle. La ejecución en bucle continúa mientras el resultado de la condición sea True.

  • Número de iteraciones. Si condition es False cuando se entra en el bucle por primera vez, ni siquiera se ejecuta una vez.

  • Bucles anidados. Se pueden anidar bucles While colocando un bucle dentro de otro. También puede anidar distintos tipos de estructuras de control dentro de otras. Para obtener más información, vea Estructuras de control anidadas (Visual Basic).

  • Transferir fuera del bucle. Exit (Instrucción, Visual Basic) transfiere el control inmediatamente a la instrucción que sigue a la instrucción End While. Por ejemplo, puede ser conveniente salir de un bucle si se detecta una condición que hace que sea innecesario o imposible continuar la iteración, como puede ser un valor erróneo o una solicitud de finalización. Puede poner cualquier número de instrucciones Exit While en cualquier lugar del bucle While. Exit While se utiliza a menudo después de evaluar alguna condición, por ejemplo en una estructura If...Then...Else.

  • Bucles sin fin. Un uso de Exit While consiste en comprobar una condición que podría ocasionar un bucle sin fin; es decir, un bucle que pudiera ejecutarse un número extremadamente elevado, o incluso infinito, de veces. Si detecta este tipo de condición, puede utilizar Exit While para salir del bucle. Para obtener más información, vea Instrucción Do...Loop (Visual Basic).

Ejemplo

Este ejemplo utiliza la estructura While...End While para incrementar una variable de contador. Las instrucciones del bucle se ejecutan en tanto la condición dé como resultado 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")

Vea también

Referencia

Instrucción Do...Loop (Visual Basic)

Instrucción For...Next (Visual Basic)

Boolean (Tipo de datos, Visual Basic)

Exit (Instrucción, Visual Basic)

Conceptos

Estructuras de bucles (Visual Basic)

Estructuras de control anidadas (Visual Basic)