C# Dictionaryクラス入門
みなさんは今、
- 配列
- List
- LINQ
まで学習しました。
今日はその次のステップ、
🔑 Dictionary(ディクショナリ)
について学びます。
目次
■ Dictionaryとは?
Dictionaryとは、
「キー」と「値」をセットで管理するコレクション
です。
たとえば:
| キー | 値 |
|---|---|
| “A001” | “山田” |
| “A002” | “佐藤” |
| “A003” | “鈴木” |
これはまるで辞書です。
英単語(キー)を入れると
意味(値)が出てくる。
■ なぜDictionaryが必要?
配列の場合
string[] names = { "山田", "佐藤", "鈴木" };
Console.WriteLine(names[1]);
→ 「番号」で取り出します。
Dictionaryの場合
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
Dictionary<string, string> students =
new Dictionary<string, string>();
students.Add("A001", "山田");
students.Add("A002", "佐藤");
students.Add("A003", "鈴木");
Console.WriteLine(students["A002"]);
}
}
→ 「意味のあるキー」で取り出せます。
■ 基本構造
Dictionary<キーの型, 値の型>
例:
Dictionary<string, int> scores;
- string → 名前
- int → 点数
という意味になります。
■ よく使う操作
① 追加
dict.Add("キー", 値);
② 取得
dict["キー"];
③ 存在確認(重要)
if (dict.ContainsKey("A001"))
{
Console.WriteLine("存在します");
}
※存在しないキーを指定するとエラーになります。
■ 安全な取得方法(実務でよく使う)
if (dict.TryGetValue("A001", out string name))
{
Console.WriteLine(name);
}
else
{
Console.WriteLine("見つかりません");
}
これが一番安全な取り出し方です。
■ イメージ

■ 配列・Listとの違い
| 種類 | 取り出し方 | 向いている用途 |
|---|---|---|
| 配列 | 番号 | 固定個数 |
| List | 番号 | 増減あり |
| Dictionary | キー | 紐づけ管理 |
■ 注意点
同じキーは登録できません。
dict.Add("A001", "山田");
dict.Add("A001", "佐藤"); // エラー
Dictionaryは
キーが重複できない という特徴があります。
■ 今日の理解ポイント
Dictionaryは
「番号で探す」から
「意味で探す」への進化
です。
大事なのは文法よりも、
「何をキーにするのか?」
を考える力です。
■ 小さな課題
① 名前 → 点数 を管理するDictionaryを作る
② アイテム名 → 所持数 を管理するDictionaryを作る
③ TryGetValueを使って安全に取り出す
配列・Listが理解できている人は
必ず理解できます。
焦らず、1つずつ確認していきましょう。
訪問数 19 回, 今日の訪問数 19回




ディスカッション
コメント一覧
まだ、コメントがありません