C# の for 文
C# の for 文で繰り返し処理を行う
for 文を使う次の形式で、繰り返し処理を行うことができます。
for (カウンターの初期化; 繰返し条件; カウンター操作)
{
// ここのコードブロックが繰返し条件を満たす間繰り返される
}
次の例をみてください。
for (int i = 0; i < 10; i++)
{
Console.Write($"{i}");
}
ここではまず、変数 i を 0 で初期化します。
次に繰り返し条件式 i < 10 を評価。 これは true になりますから、次のコードブロックを実行します。
繰り返しのコードブロックの処理が終了したら、カウンター操作部を実行します。ここでは i をひとつインクリメント (1 を足し算) し、 i は 1 になります。
再度、繰り返し条件式 i < 10 を評価し true となるので、コードブロックを処理します。処理が終われば,再度カウンター操作部を実行して、 i をインクリメントし、再度,繰り返し条件を評価します。
これを、繰り返し条件が false となるまで繰り返します。
必ずしも、繰り返し条件にカウンターを利用する必要はありません。しかし for 文では、カウンターをここで説明したように使うのが便利です。
for 文のカウンターを for の外で宣言することも可能
典型的な使い方は、このようにカウンターとなる変数を用意して、それを for 文内で操作することです。しかし、必ずしもカウンターをこのように使う必要はありません。
次のように for の外でカウンターを宣言したり、 繰り返しコードブロック内部でカウンターを操作しても構いません。
int i = 0;
for (; i < 10;)
{
Console.Write($"{i}");
i += 2;
}
初期化部分、カウンター操作部は不要の場合は上記のように、空のままにします。
for ループを中断するには break 文を使う
for ループの繰り返し条件は満たしているものの,なんらかの理由で繰り返し処理を中断する場合には、 break 文を書きます。
for (int i = 0; i < 10; i++)
{
if (i == 3)
{
break;
}
Console.Write($"{i}");
}
// 012
for ループのコードブロックを中断し、次の繰り返しを行うには continue 文
for ループの繰り返し処理は継続しながら、繰り返しコードブロックを中断して、次の繰り返し処理を行うには continue 文を実行します。
次の例ではカウンターの変数 i を 2 で割った余りが 0 の場合 (つまり偶数の場合)、 そこで continue を実行します。このため i が偶数の場合 Console.Write() が実行されていません。
for (int i = 0; i < 10; i++)
{
if (i % 2 == 0)
{
continue;
}
Console.Write($"{i}");
}
// 13579