C#でプログラミングを始めると、必ず登場するのが「配列」です。
配列は、同じ型のデータをまとめて扱うための基本構造であり、初心者にとって理解の第一歩となります。
本記事では、C#における配列の基本的な宣言方法から、値の代入、ループ処理、そして多次元配列やforeach
文の使い方まで、3000文字を超えるボリュームで丁寧に解説します。
これを読めば、C#の配列に関して自信を持って使いこなせるようになります!
C#における配列(Array)は、同じ型の要素を連続的に格納するためのデータ構造です。
例えば、整数型の成績を5人分管理したい場合、以下のように配列を使ってまとめて扱うことができます。
int[] scores = new int[5];
このようにして、scores[0]
から scores[4]
までの5つの要素にアクセスすることができます。
配列の使い方には主に以下の2パターンがあります。
int[] numbers = new int[3];
これは、3つの整数を格納できる配列を作成します。初期値はすべて 0
になります。
int[] numbers = { 10, 20, 30 };
このように書くことで、配列のサイズと初期値を一度に設定することができます。
配列の要素にアクセスするには、**インデックス(添え字)**を使います。インデックスは0から始まります。
int[] ages = { 25, 30, 35 };
Console.WriteLine(ages[0]); // 25
Console.WriteLine(ages[1]); // 30
また、値を変更することも可能です。
ages[1] = 32;
Console.WriteLine(ages[1]); // 32
配列の要素をすべて処理する場合、for
文がよく使われます。
int[] scores = { 80, 90, 100 };
for (int i = 0; i < scores.Length; i++)
{
Console.WriteLine($"得点:{scores[i]}");
}
Length
プロパティを使えば、配列の要素数を取得できます。要素数が変わる可能性がある場合にも柔軟に対応できます。
C#にはforeach
という便利なループ構文があります。配列のすべての要素に順番にアクセスする場合に使えます。
int[] prices = { 120, 150, 200 };
foreach (int price in prices)
{
Console.WriteLine($"価格:{price}");
}
この方法では、インデックスを意識せずに各要素を順番に処理できます。
一次元配列だけでなく、二次元以上の配列も使うことができます。
int[,] matrix = new int[2, 3]
{
{ 1, 2, 3 },
{ 4, 5, 6 }
};
このように、行と列を持つ表形式のデータを扱うのに便利です。
Console.WriteLine(matrix[0, 2]); // 出力:3
C#では配列の他にList<T>
という便利なコレクションもあります。
配列はサイズが固定されているのに対し、List<T>
は動的に要素を追加・削除できます。
List<int> list = new List<int>();
list.Add(100);
list.Add(200);
用途によって使い分けるのがポイントです。サイズが決まっていて変更しないなら配列、柔軟に追加・削除するならリストが適しています。
配列を扱う際は、インデックスエラーに注意が必要です。存在しない要素にアクセスしようとすると例外が発生します。
int[] data = { 1, 2, 3 };
// Console.WriteLine(data[3]); // 実行時エラー:IndexOutOfRangeException
このようなエラーを防ぐには、Length
プロパティやforeach
文を使うのが効果的です。
C#では、配列のコピーやソートといった操作も標準メソッドで行うことができます。
int[] original = { 1, 2, 3 };
int[] copied = new int[3];
Array.Copy(original, copied, original.Length);
int[] numbers = { 3, 1, 2 };
Array.Sort(numbers); // 1, 2, 3に並び替えられる
配列は、C#を学ぶうえで避けて通れない基本構文です。
宣言・初期化・ループ処理・多次元配列といった要素をひとつひとつ押さえておくことで、より実践的なコードが書けるようになります。
初心者の方は、まずは一次元配列をしっかり理解し、for
文やforeach
文とセットで練習してみると良いでしょう。配列を自在に使えるようになることで、C#での開発の幅が一気に広がります。