Néha adódhat, hogy egy feltétel bekövetkezése esetén meg kell szakítanunk a ciklusunk futását, máskor pedig az a helyzet adódhat, hogy bizonyos feltételek esetén a következő iterációra kell ugratni a ciklust.
Erre a C# nyelv a break és continue utasításokat használja. Ezek valójában nem különálló vezérlési szerkezet lehetőségek. Külön említésre azért kerülnek, mert minden ciklusfajtánál használhatóak.
A break utasítás a switch – case kapcsán előkerült. Amint a program végrehajtása ide ér, akkor az aktuális ciklus futása megáll, úgymond a programunk kiugrik a ciklusból.
A continue viselkedés szempontjából a break ellentettje. Amint a program végrehajtás ide ér, akkor az aktuális ciklus futása a következő lehetőséggel folytatódik, vagyis a vezérlés visszaugrik a ciklus elejére és nem hajtja végre a continue utasítás után elhelyezett további utasításokat.
A break és continue használatát az alábbi program mutatja be:
using System;
namespace PeldaBreakContinue
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Break példa");
for (int i = 0; i < 100; i++)
{
Console.Write("{0} ", i);
if (i == 10)
{
break;
}
}
Console.WriteLine("Continue példa");
int j = 30;
while (j-- > 0)
{
if (j % 3 == 0)
{
continue;
}
Console.Write("{0} ", j);
}
Console.ReadKey();
}
}
}
A program kimenete:
Break példa
0 1 2 3 4 5 6 7 8 9
Continue példa
29 28 26 25 23 22 20 19 17 16 14 13 11 10 8 7 5 4 2 1