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.
Nota
La palabra clave While también se utiliza en Instrucción Do...Loop (Visual Basic), Skip While (Cláusula, Visual Basic) y Take While (Cláusula, Visual Basic).
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)