C# For Each 繰り返し処理

今回は、繰り返し文の「foreach ~ in」について紹介していきます。
foreachは配列やListなどのループをする際に、for文より少し簡単に記載することができます。
それでは早速見ていきましょう。

foreach文 書き方

foreachの書き方を記載していきます。

foreach(型 子要素  in 配列やListなどの型など親要素)
{
    処理;
}

このように記載することで、配列の件数分ループすることになります。

例を見ていきます。
List型をforeachでループさせてみましょう。

List<string> list_str = new List<string>();
list_str.Add("a");
list_str.Add("b");
list_str.Add("c");

foreach(string str in list_str)
{
    Console.WriteLine(str);
}
結果
a
b
c

解説
1行目~4行目:List型の変数を作成。中身はa,b,c
6行目~9行目:「list_str」を全件ループしている。 「str」にリストの値が格納されている。

結果を見ると、リストに設定した内容がすべて表示されていますね。
ちなみにfor文で記載するとこうなります。

for(int i = 0; i < list_str.Count; i++)
{
    Console.WriteLine(list_str[i]);
}

 

結果は同じなので、自分がわかりやすい方や状況に応じてfor文やforeach文を使っていきましょう。

また、foreach文もcontinueやbreak処理をすることができます。

for文の時にcontineとbreakについて紹介しているので参考にしてみてください。

continue 次のループへ

continueは、次のループへ進ませることができます。
サンプルだけ紹介しておきます。

List<string> list_str = new List<string>() { "a","b","c"};

foreach(string str in list_str)
{
    if (str == "b")
    {
        continue;
    }

    Console.WriteLine(str);
}
結果
a
c

 

break ループ強制終了

breakは、ループを強制終了させることができます。

List<string> list_str = new List<string>() { "a","b","c"};

foreach(string str in list_str)
{
    if (str == "b")
    {
        break;
    }

    Console.WriteLine(str);
}
結果
a

 

まとめ

今回はforeach文を紹介してきました。

foreach文を利用することで、配列やListを全件ループすることができます。

for文でももちろん同じようにループさせることができるので、自分がわかりやすい方を利用してみてください。

 

C#の記事一覧

おすすめの記事