初心者必見!C#配列の基本と応用
こんにちは!今回は、C#プログラミングの基本的かつ重要な概念である「配列」について詳しく解説します。配列を使いこなせるようになれば、効率的なコードを書くことができるようになります。それでは、基礎から応用まで順を追って見ていきましょう。
自己紹介
私は新卒でFAシステムの開発会社に入社した2年目エンジニアです。(2024年時点)
私はC#とVBを学習中なのでブログを見返す用のメモ代わりに活用しています。私の知識を共有し、皆様の学習のサポートとなれば幸いです。
1. 配列とは?
配列とは、同じデータ型の複数の要素を一つの変数で扱うことができるデータ構造です。例えば、100個の整数を別々の変数で管理するのではなく、1つの配列変数で管理することができます。
2. 配列の宣言と初期化
C#で配列を宣言・初期化する方法はいくつかあります。基本的な方法を見てみましょう。
// 方法1: サイズを指定して宣言
int[] numbers = new int[5];
// 方法2: 宣言と同時に初期化
string[] fruits = new string[] { "りんご", "バナナ", "オレンジ" };
// 方法3: 省略形
double[] prices = { 100.0, 200.5, 300.75 };
3. 配列要素へのアクセスと変更
配列の各要素には、インデックス(添字)を使ってアクセスします。インデックスは0から始まることに注意しましょう。
string[] colors = { "赤", "青", "緑" };
// 要素へのアクセス
Console.WriteLine(colors[0]); // 出力: 赤
// 要素の変更
colors[1] = "黄";
Console.WriteLine(colors[1]); // 出力: 黄
4. 配列の長さを取得する
配列の長さ(要素数)を取得するには、Length
プロパティを使用します。
int[] numbers = { 1, 2, 3, 4, 5 };
Console.WriteLine(numbers.Length); // 出力: 5
5. 配列のループ処理
配列の全要素に対して処理を行う場合、ループを使用します。for
ループとforeach
ループの2つの方法を紹介します。
string[] fruits = { "りんご", "バナナ", "オレンジ" };
// for ループ
for (int i = 0; i < fruits.Length; i++)
{
Console.WriteLine(fruits[i]);
}
// foreach ループ
foreach (string fruit in fruits)
{
Console.WriteLine(fruit);
}
6. 多次元配列
C#では、2次元以上の多次元配列も作成できます。以下は2次元配列の例です。
// 2次元配列の宣言と初期化
int[,] matrix = new int[3, 3] {
{ 1, 2, 3 },
{ 4, 5, 6 },
{ 7, 8, 9 }
};
// 要素へのアクセス
Console.WriteLine(matrix[1, 1]); // 出力: 5
7. ジャグ配列(不規則な配列)
ジャグ配列は、配列の配列です。各要素が異なる長さの配列を持つことができます。
// ジャグ配列の宣言と初期化
int[][] jaggedArray = new int[][] {
new int[] { 1, 2, 3 },
new int[] { 4, 5 },
new int[] { 6, 7, 8, 9 }
};
// 要素へのアクセス
Console.WriteLine(jaggedArray[1][1]); // 出力: 5
8. 配列のメソッド
C#には、配列を操作するための便利なメソッドがいくつか用意されています。
int[] numbers = { 3, 1, 4, 1, 5, 9, 2, 6 };
// ソート
Array.Sort(numbers);
Console.WriteLine(string.Join(", ", numbers)); // 出力: 1, 1, 2, 3, 4, 5, 6, 9
// 逆順
Array.Reverse(numbers);
Console.WriteLine(string.Join(", ", numbers)); // 出力: 9, 6, 5, 4, 3, 2, 1, 1
// 検索
int index = Array.IndexOf(numbers, 5);
Console.WriteLine($"5のインデックス: {index}"); // 出力: 5のインデックス: 2
まとめ
以上で、C#における配列の基本と応用について解説しました。配列は、データを効率的に管理・操作するための強力なツールです。これらの概念を理解し、実際のコーディングで活用することで、より効果的なプログラムを作成することができます。
練習問題を解いたり、実際のプロジェクトで配列を使ってみたりすることで、さらに理解を深めていきましょう。頑張ってください!
コメント