C# 配列やリストをDictionaryに変換する

  • 作成日 2021.09.13
  • 更新日 2022.04.09
  • C#
C# 配列やリストをDictionaryに変換する

C#で、配列やリストをDictionaryに変換するサンプルコードを記述してます。

環境

  • OS windows10 pro 64bit
  • Microsoft Visual Studio Community 2019 Version 16.7.1

配列やリストをDictionaryに変換

配列やリストをDictionaryに変換するには、Linqの「ToDictionary」を使用することで可能です。

以下は、リストをDictionaryに変換だけのコードとなります。

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

namespace testapp
{

    public class BookItem
    {
        public int Id { get; set; }
        public string Name { get; set; }
    }
    class Program
    {
        static void Main(string[] args)
        {
            List<BookItem> items = new List<BookItem>() {
                new BookItem() { Id = 1, Name = @"a" },
                new BookItem() { Id = 2, Name = @"b" },
                new BookItem() { Id = 3, Name = @"c" },
             };

            try
            {

                Dictionary<int, string> itemsDictonary = items.ToDictionary(value => value.Id, value => value.Name);

                Console.WriteLine($"実行結果は{String.Join(", ", itemsDictonary.Select(v => v))}です");
                // [1, a], [2, b], [3, c]

            }
            catch (Exception e)
            {
                System.Console.WriteLine(e.ToString());             
            }
        }
    }
}

実行結果