【C#入門】ToDictionaryの使い方を解説【LINQ】


C#の『ToDictionary』の使い方が分からない…教えてください!


C#を学んでいるけど…

ToDictionaryの使い方が分からない

このような疑問を持っていませんか?

この記事では、LINQのひとつである『ToDictionary』について現役エンジニアが分かりやすく解説します。

まだ、C#の開発環境構築が出来ていない方はこちらを参考にしてください。

ToDictionaryの使い方

ToDictionaryの使い方を解説する前に、ToDictionaryで何が出来るのかを把握しておきましょう。

ToDictionary = リストを辞書型に変換

このような考え方で問題ありません。ToDictionaryを使用すると指定したリストを辞書型に変換して出力することが出来ます

それでは、実際のコードを用いながらToDictionaryの使い方を解説していきます。

まずは、ToDictionaryの使い方から説明します。ToDictionaryを使うときには以下のように記述します。

リスト.ToDictionary(Key, Value)

実際のコードを用いながらToDictionaryの使い方を解説していきます。

ToDictionaryを使ってシーケンスを出力するときには以下のように記述します。

using System;
using System.Collections.Generic;
using System.Linq;

namespace sample
{
    class LinqToDictionary
    {
        private class OnePiece
        {
            public int Id { get; set; }
            public string Name { get; set; }
            public string Belong { get; set; }
        }
        static public void BlogLinqToDictionary()
        {
            // リストを宣言・初期化
            List<OnePiece> onePiecesList = new List<OnePiece>
            {
                new OnePiece { Id = 0, Name = "モンキー・D・ルフィ" },
                new OnePiece { Id = 1, Name = "ロロノア・ゾロ" },
                new OnePiece { Id = 2, Name = "ナミ" },
                new OnePiece { Id = 3, Name = "ウソップ" },
                new OnePiece { Id = 4, Name = "ヴィンスモーク・サンジ" },
                new OnePiece { Id = 5, Name = "トニートニー・チョッパー" },
                new OnePiece { Id = 6, Name = "ニコ・ロビン" },
                new OnePiece { Id = 7, Name = "フランキー" },
                new OnePiece { Id = 8, Name = "ブルック" },
                new OnePiece { Id = 9, Name = "ジンベエ" },
            };

            // リストを辞書型に変換
            Dictionary<int, String> onePiecesDictionary = onePiecesList.ToDictionary(x => x.Id, x => x.Name);

            // ToDictionaryの実行結果を出力
            for (int i = 0; i < onePiecesDictionary.Count; i++)
            {
                Console.WriteLine($"{i}番目:{onePiecesDictionary[i]}");
            }
        }
    }
}

サンプルコードを実行した際の出力結果は、以下のようになります。

0番目:モンキー・D・ルフィ
1番目:ロロノア・ゾロ
2番目:ナミ
3番目:ウソップ
4番目:ヴィンスモーク・サンジ
5番目:トニートニー・チョッパー
6番目:ニコ・ロビン
7番目:フランキー
8番目:ブルック
9番目:ジンベエ

実行結果から分かるように、リストを辞書型として変換し、KeyとValueで値を取得することが出来ています。

リスト.ToDictionary(Key, Value)

これを基にサンプルコードを解説すると、「リスト = onePiecesList」となります。

つまり、リスト(onePiecesListToDictionaryを適用し、リストを辞書型(onePiecesDictionary)に変換した結果をを出力(Console.WriteLine)するということです。

このようにして、C#ではToDictionaryを使用することで、リストを辞書型に変換するコードを簡潔に書くことが出来ます。

【まとめ】ToDictionaryはリストを辞書型に変換

ToDictionaryの使い方は理解できましたか?

まとめ

  • ToDictionary = リストを辞書型に変換
  • リスト.ToDictionary(Key, Value)

この記事では、C#のToDictionaryの使い方について紹介しました。

最後になりますが、ここに関してもっと詳しく教えて欲しいときなどは、遠慮なく、お問い合わせ、コメント、Twitterにてご連絡ください。

最後までお読みいただきありがとうございました。

Tech Academy

  • 受講者数No.1のプログラミングスクール
  • 通過率10%の選考に合格した優秀な講師
  • カリキュラムを閲覧制限なし
  • コースの種類が豊富
  • オンラインで完結
  • 無料体験あり
  • 無料カウンセリングあり
  • 学割あり

\ 公式サイトはこちら /

Tech Academy 公式サイト