while (Справочник по C#)

Обновлен: Ноябрь 2007

Оператор while выполняет оператор или блок операторов, пока определенное выражение не примет значение false.

Пример

class WhileTest 
{
    static void Main() 
    {
        int n = 1;
        while (n < 6) 
        {
            Console.WriteLine("Current value of n is {0}", n);
            n++;
        }
    }
}
/*
    Output:
    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
 */

class WhileTest2 
{
    static void Main() 
    {
        int n = 1;
        while (n++ < 6) 
        {
            Console.WriteLine("Current value of n is {0}", n);
        }
    }
}
/*
Output:
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
*/

Поскольку перед каждым выполнением цикла выражение while тестируется, цикл while выполняется от нуля до нескольких раз. Это отличает его от цикла do, который выполняется от одного до нескольких раз.

Цикл while может быть прерван, если оператор break, goto, return или throw передает управление за пределы цикла. Чтобы передать управление на следующую итерацию без выхода из цикла, используйте оператор continue. Обратите внимание на разницу в результатах трех предыдущих примеров, которые зависят от места увеличения int n. В следующем примере результат отсутствует.

class WhileTest3
{
    static void Main() 
    {
        int n = 5;
        while (++n < 6) 
        {
            Console.WriteLine("Current value of n is {0}", n);
        }
    }
}

Спецификация языка C#

Дополнительные сведения см. в следующих разделах документа Спецификация языка C#:

  • 5.3.3.7 Операторы while

  • 8.8.1 Оператор while

См. также

Основные понятия

Руководство по программированию в C#

Ссылки

Ключевые слова C#

The while Statement

Инструкции итерации (Справочник по C#)

Другие ресурсы

Справочник по C#