Циклы очень распространены при программировании. Они используются для перебора списка или массива или выполнения до тех пор, пока не будет достигнуто определенное условие. Существуют разные виды циклов, и на этот раз я хочу показать вам все о цикле do-while в C#.

Что это такое?

Цикл do-while — это цикл, в котором выполнение кода продолжается до тех пор, пока не будет выполнено определенное условие. Это как обычная повседневная вещь: продолжайте пить, пока не перестанете испытывать жажду. При этом продолжать пить — это казнь, а пока не захочется пить — условие. Указанное условие должно быть истинным.

Состав цикла while в C# всегда одинаков:

  • Это начинается с сделать
  • Затем вы указываете условие в конце с помощью времени
  • Вы пишете код, который будет выполняться до тех пор, пока условие истинно.
  • Выполнение кода останавливается, когда условие ложно

Это похоже на пока, но do-while выполняет блок кода хотя бы один раз. Хорошим примером является изображение ниже, где while останавливается вовремя, а do-while выходит за край.

Приведенный ниже код является реализацией do-while по умолчанию.

do
{
    // Your code here
} while (true);

Примеры

Ниже приведены несколько примеров, которые показывают, как работает цикл do while в C#.

Базовый пример

int i = 0;
bool run = true;

do
{
    Console.WriteLine("Executing...");
    i++;

    if (i > 10)
        run = false; // Run is set to false, to this will stop the While loop
} while (run);

На самом деле это покажет 11 строк «Executing». Код ниже будет лучше:

int i = 0;

do
{
    i++;
    Console.WriteLine(i);
} while (i < 10);

Остановка/перерыв

В некоторых случаях вы можете захотеть остановить или прервать цикл for до того, как условие будет выполнено. Это можно сделать с помощью разрыва. В приведенном ниже примере цикл while остановится, как только i станет равным 5.

List<string> movieTitles = new()
{
    "The Matrix", "Shrek", "Inception", "The Muppets", "Jaws"
};

for (int i = 0; i < movieTitles.Count; i++)
{
    if (movieTitles[i] == "The Muppets")
        break;

    Console.WriteLine($"Movie {movieTitles[i]} has index {i}");
}

Следующая итерация / Продолжить

В некоторых случаях вы хотите пропустить часть кода и перейти к следующему запуску/итерации. Этого можно добиться с помощью продолжить. В приведенном ниже примере цифра 5 не будет напечатана на консоли.

int i = 0;

do
{
    i++;

    if (i == 5)
        continue;

    Console.WriteLine(i);
} while (i < 10);

Спасибо, что прочитали! Не забудьте аплодировать этой статье, если вам понравилось читать эту статью. Нажмите кнопку «Подписаться», если хотите быть в курсе новых статей, написанных вашим покорным слугой.