カテゴリ: C# 更新日: 2025/07/09

C#のforeach文の基本!配列やコレクションを簡単に繰り返し処理する方法

C#のforeach文の基本!配列やコレクションを簡単に繰り返し処理する方法
C#のforeach文の基本!配列やコレクションを簡単に繰り返し処理する方法

先生と生徒の会話形式で理解しよう

生徒

「C#で配列やリストを1つずつ取り出して処理したいんですが、簡単な方法はありますか?」

先生

「はい、C#にはforeach文というとても便利な繰り返し処理の書き方があります。」

生徒

「for文とどう違うんですか?初心者でも使えますか?」

先生

「もちろん使えますよ!foreachは簡単に書けて、間違いも起きにくいんです。では、具体的に見ていきましょう。」

1. foreach文とは?

1. foreach文とは?
1. foreach文とは?

C#のforeach文は、「配列(はいれつ)」や「リスト」などのコレクション(複数のデータの集まり)を、順番に1つずつ取り出して処理するための文法です。

初心者でも使いやすく、繰り返し処理の中でももっともミスが少なく、直感的に書けるのが特徴です。

2. foreach文の基本構文

2. foreach文の基本構文
2. foreach文の基本構文

foreach文の書き方は、以下のようになります。


foreach (データ型 変数名 in コレクション名)
{
    // 1つずつ取り出して処理
}

「コレクション名」から1つずつデータを取り出して、「変数名」に代入し、その中で処理を行います。すべての要素が処理されるまで自動で繰り返します。

3. 配列を使ったforeach文の例

3. 配列を使ったforeach文の例
3. 配列を使ったforeach文の例

まずは、配列を使った基本的なforeach文の例を見てみましょう。


string[] fruits = { "りんご", "バナナ", "みかん" };

foreach (string fruit in fruits)
{
    Console.WriteLine(fruit);
}

このコードでは、fruitsという配列から1つずつ「くだもの」の名前を取り出して、表示しています。


りんご
バナナ
みかん

4. foreach文のイメージを簡単に説明

4. foreach文のイメージを簡単に説明
4. foreach文のイメージを簡単に説明

たとえば、お弁当箱の中に「おにぎり」「卵焼き」「唐揚げ」が入っているとします。foreach文は、それをフタを開けて、1つずつ取り出して食べるようなイメージです。

箱に入っている順番どおりに取り出して、すべて終わるまで繰り返します。自分で数えたり、管理する必要がないので、初心者でも使いやすいです。

5. List(リスト)でも使えるforeach文

5. List(リスト)でも使えるforeach文
5. List(リスト)でも使えるforeach文

C#には、配列のほかにもList(リスト)というコレクションがあります。foreach文は、Listにも同じように使えます。


using System.Collections.Generic;

List<int> numbers = new List<int>() { 10, 20, 30 };

foreach (int number in numbers)
{
    Console.WriteLine(number);
}

10
20
30

Listの中の数字が1つずつ取り出されて、numberに入ります。

6. foreach文の注意点

6. foreach文の注意点
6. foreach文の注意点

foreach文の中では、基本的に要素の値を書き換えることはできません

以下のようなコードはエラーになります:


string[] animals = { "ネコ", "イヌ", "トリ" };

foreach (string animal in animals)
{
    animal = "ゾウ"; // ← これはエラーになります
}

取り出した変数animalは読み取り専用の扱いになるので、変更したい場合はfor文などを使う必要があります。

7. foreach文が便利な理由

7. foreach文が便利な理由
7. foreach文が便利な理由
  • 配列やリストを1つずつ取り出す処理がとても簡単に書ける
  • 要素数を気にしなくてよい(自動で最後まで繰り返してくれる)
  • 読みやすくてエラーが少ないコードになる

初心者でも理解しやすく、よく使う構文のひとつなので、しっかり覚えておきましょう。

カテゴリの一覧へ
新着記事
C#で複数ファイルをまとめて操作する方法(foreach・LINQ)をやさしく解説!
C#のインターフェースとは?クラス設計を柔軟にする基本技術
C#のコンストラクタの役割と使い方!オブジェクト初期化の基本
COBOLでデータベース接続を理解しよう!初心者でもわかる基本の考え方
人気記事
No.1
Java&Spring記事人気No1
C#のpartialクラスとは?初心者でも理解できるクラス分割の基本
No.2
Java&Spring記事人気No2
C#で型を調べる方法!GetType()・typeof演算子の違いと使い方
No.3
Java&Spring記事人気No3
C#の数値型をマスターしよう!int・double・decimalの違いと使い方
No.4
Java&Spring記事人気No4
COBOLのCOPY句の使い方を完全ガイド!初心者でもわかる共通部品の再利用方法