C#のDictionary(辞書)とは?宣言・初期化の基本をわかりやすく解説
C#のDictionary(辞書)とは
C#におけるDictionary(ディクショナリ)は、キー(Key)と値(Value)のペアを格納するためのコレクションです。各キーは一意である必要があり、キーを指定することで対応する値へ高速にアクセスできるのが大きな特徴です。
Dictionaryは、System.Collections.Generic名前空間に含まれています。利用する際は、この名前空間をusingディレクティブで追加しておきましょう。
Dictionaryの宣言と初期化
Dictionaryを宣言して初期化するには、以下のように記述します。
IDictionary<int, int> d = new Dictionary<int, int>();
上記の例では、宣言の時点でキーと値の型を指定しています。ここではキーの型がint、値の型もintであり、これらのペアが「d」という名前のDictionaryオブジェクトに格納されます。
なお、キーと値の型は自由に組み合わせることが可能です。例えば、キーがstringで値がintのDictionaryを作成したい場合は、次のように宣言します。
IDictionary<string, int> d = new Dictionary<string, int>();
サンプルコード
実際にDictionaryを使用した例を見てみましょう。
using System;
using System.Collections.Generic;
public class Demo {
public static void Main() {
IDictionary<int, int> d = new Dictionary<int, int>();
d.Add(1, 97);
d.Add(2, 89);
d.Add(3, 77);
d.Add(4, 88);
// Dictionaryの要素数を表示
Console.WriteLine("Dictionary elements: " + d.Count);
}
}
このコードでは、Add()メソッドを使って4つのキーと値のペアを追加しています。最後にCountプロパティで要素数を出力しており、実行結果として「4」がコンソールに表示されます。
ポイントまとめ
- Dictionaryはキーと値のペアを管理するコレクションである
System.Collections.Generic名前空間に属している- 要素の追加には
Add()メソッドを使用する - 現在の要素数は
Countプロパティで取得できる
-
C#のオーバーロードとは?関数と演算子のオーバーロードを徹底解説
C#におけるオーバーロードの概要C#では、静的ポリモーフィズム(コンパイル時ポリモーフィズム)を実現するために、次の2つの手法が用意されています。関数のオーバーロード(メソッドのオーバーロード)演算子のオーバーロード関数のオーバーロードとは同じ名前でありながら、パラメータが異なる2つ以上のメソッドを定義することを、C#では「関数のオーバーロード」と呼びます。関数のオーバーロードは、引数の個数を変更する方法と、引数のデータ型を変更する方法の2通りで実現できます。例えば、数値の掛け算の結果を出力する関数がある場合、オーバーロードされた各メソッドは同じ名前を持ちながら、引数の数が異なります。publ
-
C#の列挙型(Enum)とは?基本的な使い方をサンプルコード付きで解説
C#における列挙型(Enum:Enumeration)は、曜日、月、季節、製品カテゴリなど、関連する一連の名前付き定数をひとつのグループとして格納するためのデータ型です。Enumの定数にはデフォルトで0から始まる整数値が自動的に割り当てられ、宣言された順番に1ずつ増加していきます。定数のセットは固定されており、ループ処理などで簡単に走査(トラバース)できるのも大きな特徴です。Enumの基本的な特徴関連する名前付き定数をひとまとめに管理できる最初の定数にはデフォルトで「0」が割り当てられ、以降は1ずつ増加する値は明示的に変更することも可能型安全性が高く、無効な値の代入をコンパイル時に防げるEnu