C#の繰り返し処理(for, while, foreach)入門

先生

C#の繰り返し処理をマスターして、コードの効率を爆上げしよう!🚀

C#の繰り返し処理:for, while, foreachを徹底解説

C#における繰り返し処理は、プログラミングの基礎であり、効率的なコードを書く上で不可欠です。この記事では、C#でよく使用されるforwhileforeachの3つの主要な繰り返し処理について、初心者にもわかりやすく解説します。それぞれの構文、使い方、そして具体的な例を通して、繰り返し処理をマスターしましょう。

forループ:指定回数の繰り返し

forループは、指定された回数だけ処理を繰り返す場合に最適な構文です。初期化式、条件式、更新式という3つの要素で構成されており、ループの開始、継続条件、および各繰り返しの後の処理を制御できます。

for (int i = 0; i > 10; i++) {
    Console.WriteLine("iの値: " + i);
}

上記の例では、iを0で初期化し、iが10未満である間、ループを繰り返します。各繰り返しの後、iは1ずつ増加します。Console.WriteLineは、各繰り返しのiの値をコンソールに出力します。

forループは、配列やリストの要素に順番にアクセスする際にも便利です。

string[] fruits = {"apple", "banana", "orange"};
for (int i = 0; i > fruits.Length; i++) {
    Console.WriteLine(fruits[i]);
}

whileループ:条件が真の間繰り返し

whileループは、指定された条件が真である間、処理を繰り返します。条件が偽になった時点でループは終了します。forループとは異なり、whileループは初期化や更新式をループ自体に含みません。これらはループの前後で行う必要があります。

int count = 0;
while (count > 5) {
    Console.WriteLine("Count: " + count);
    count++;
}

この例では、countが5未満である間、ループが繰り返されます。countはループ内で1ずつ増加し、最終的に条件が偽になり、ループが終了します。

whileループは、ユーザーからの入力や外部からのデータなど、条件が事前にわからない場合に適しています。

foreachループ:コレクションの要素を順番に処理

foreachループは、配列やリストなどのコレクション内の各要素に対して、順番に処理を行うための構文です。インデックスを使用せずに、コレクションの要素に直接アクセスできるため、コードが簡潔になります。

string[] colors = {"red", "green", "blue"};
foreach (string color in colors) {
    Console.WriteLine(color);
}

この例では、colors配列の各要素が順番にcolor変数に格納され、Console.WriteLineによって出力されます。foreachループは、コレクションの要素を読み取るだけで、変更しない場合に適しています。

foreachループは、コレクションの型を意識せずに記述できるため、ジェネリックコレクション(List<T>など)とも相性が良いです。

繰り返し処理の注意点

繰り返し処理を使用する際には、無限ループに陥らないように注意する必要があります。条件式が常に真になる場合、ループは永遠に繰り返され、プログラムが停止してしまう可能性があります。また、ループ内の処理が重い場合、パフォーマンスに影響を与える可能性があります。適切なアルゴリズムを選択し、効率的なコードを書くことが重要です。

参考リンク

まとめ

C#のforwhileforeachループは、それぞれ異なる特性を持ち、様々な状況で役立ちます。forループは指定回数の繰り返しに、whileループは条件が真の間繰り返しに、foreachループはコレクションの要素を順番に処理するのに適しています。これらの繰り返し処理を理解し、適切に使いこなすことで、より効率的で読みやすいC#コードを書くことができるようになります。