Циклы

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

Циклом называется один или несколько операторов, повторяющихся заданное число раз или до тех пор, пока не будет выполнено определенное условие. Выбор типа цикла зависит от задачи программирования и личных предпочтений кодирования. Одним из основных отличий C# от других языков, таких как C++, является цикл foreach, разработанный для упрощения итерации по массиву или коллекции.

Циклы foreach

В C# представлен новый способ создания циклов, который может быть неизвестен программистам на C++ и C: цикл foreach. Вместо просто создания переменной для индексирования массива или другой структуры данных, такой как коллекция, цикл foreach выполняет более тяжелую работу.

// An array of integers
int[] array1 = {0, 1, 2, 3, 4, 5};

foreach (int n in array1)
{
    System.Console.WriteLine(n.ToString());
}


// An array of strings
string[] array2 = {"hello", "world"};

foreach (string s in array2)
{
    System.Console.WriteLine(s);
}

Циклы for

Далее показано создание нескольких циклов с использованием ключевого слова for.

// An array of integers
int[] array1 = {0, 1, 2, 3, 4, 5};

for (int i=0; i<6; i++)
{
    System.Console.WriteLine(array1[i].ToString());
}


// An array of strings
string[] array2 = {"hello", "world"};

for (int i=0; i<2; i++)
{
    System.Console.WriteLine(array2[i]);
}

Циклы while

В следующих примерах показаны варианты цикла while.

// An array of integers
int[] array1 = {0, 1, 2, 3, 4, 5};
int x = 0;

while (x < 6)
{
    System.Console.WriteLine(array1[x].ToString());
    x++;
}


// An array of strings
string[] array2 = {"hello", "world"};
int y = 0;

while (y < 2)
{
    System.Console.WriteLine(array2[y]);
    y++;
}

Циклы do-while

В следующих примерах показаны варианты цикла do-while.

// An array of integers
int[] array1 = {0, 1, 2, 3, 4, 5};
int x = 0;

do
{
    System.Console.WriteLine(array1[x].ToString());
    x++;
} while(x < 6);


// An array of strings
string[] array2 = {"hello", "world"};
int y = 0;

do
{
    System.Console.WriteLine(array2[y]);
    y++;
} while(y < 2);

См. также

Задачи

Практическое руководство. Разрыв итерационного оператора

Практическое руководство. Выполнение итерации коллекции

Практическое руководство. Итерация массива

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

Основы языка C#

Ссылки

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

Использование оператора foreach с массивами (Руководство по программированию на C#)