C# の for 文

C# の for 文で繰り返し処理を行う

for 文を使う次の形式で、繰り返し処理を行うことができます。

for (カウンターの初期化; 繰返し条件; カウンター操作)
{
  // ここのコードブロックが繰返し条件を満たす間繰り返される
}

次の例をみてください。

for (int i = 0; i < 10; i++)
{
  Console.Write($"{i}");
}

ここではまず、変数 i0 で初期化します。

次に繰り返し条件式 i < 10 を評価。 これは true になりますから、次のコードブロックを実行します。

繰り返しのコードブロックの処理が終了したら、カウンター操作部を実行します。ここでは i をひとつインクリメント (1 を足し算) し、 i1 になります。

再度、繰り返し条件式 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

ここまでお読みいただき、誠にありがとうございます。SNS 等でこの記事をシェアしていただけますと、大変励みになります。どうぞよろしくお願いします。

© 2024 C# 入門