La instrucción while ejecuta una instrucción o un bloque de instrucciones repetidamente hasta que una expresión especificada se evalúa como false.
// statements_while.cs using System; class WhileTest { static void Main() { int n = 1; while (n < 6) { Console.WriteLine("Current value of n is {0}", n); n++; } } }
Current value of n is 1 Current value of n is 2 Current value of n is 3 Current value of n is 4 Current value of n is 5
// statements_while_2.cs using System; class WhileTest { static void Main() { int n = 1; while (n++ < 6) { Console.WriteLine("Current value of n is {0}", n); } } }
Current value of n is 2 Current value of n is 3 Current value of n is 4 Current value of n is 5 Current value of n is 6
Como la comprobación de la expresión while tiene lugar antes de la ejecución del bucle, las instrucciones internas de un bucle while pueden no llegar a ejecutarse. Esto es diferente del bucle do que se ejecuta una o varias veces.
Un bucle while se puede terminar cuando una instrucción break, goto, return o throw transfiere el control fuera del bucle. Para pasar el control a la siguiente iteración sin salir del bucle, use la instrucción continue. Observe la diferencia en los resultados de los tres ejemplos anteriores con relación a dónde se incrementa int n. En el ejemplo siguiente no se genera ningún resultado.
// statements_while_3.cs // no output is generated using System; class WhileTest { static void Main() { int n = 5; while (++n < 6) { Console.WriteLine("Current value of n is {0}", n); } } }
Para obtener más información, vea las secciones siguientes de Especificación del lenguaje C#.
5.3.3.7 Instrucciones while
8.8.1 La instrucción while