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

Actualización: noviembre 2007

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

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

Partes

  • condition
    Requerido. 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 entra en el bucle por primera vez, no se ejecuta ni una vez.

  • Anidar bucles. Los bucles While se pueden anidar, colocando un bucle dentro de otro. También puede anidar tipos diferentes de estructuras de control entre sí. Para obtener más información, vea Estructuras de control anidadas.

  • Transferir fuera del bucle.Instrucción Exit (Visual Basic) transfiere el control inmediatamente a la instrucción que sigue a la instrucción End While. Puede desear salir de un bucle si detecta una condición que hace que sea innecesario o que no se pueda continuar la iteración, como un valor incorrecto o una solicitud de finalización. Puede incluir el número que desee de instrucciones Exit While en cualquier parte del bucle While. Exit While se utiliza a menudo tras 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 puede ocasionar un bucle sin fin; es decir, un bucle que se puede ejecutar un número extremadamente elevado o 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

Conceptos

Estructuras de bucles

Estructuras de control anidadas

Referencia

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

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

Boolean (Tipo de datos, Visual Basic)

Instrucción Exit (Visual Basic)