「東雲 忠太郎」の平凡な日常のできごと

「東雲 忠太郎」の平凡な日常のできごと

2024.04.27
XML
カテゴリ: C#.NET


`ToLookup`メソッドは、配列やリストなどの`IEnumerable<T>`を対象としていますが、`Dictionary<TKey, TValue>`に直接適用することはできません。ただし、`Dictionary<TKey, TValue>`を`IEnumerable<KeyValuePair<TKey, TValue>>`に変換してから`ToLookup`を使用することは可能です。


以下は、`Dictionary<TKey, TValue>`を`ToLookup`メソッドを使ってキーに基づいてグループ化するサンプルコードです:



using System;

using System.Collections.Generic;

using System.Linq;


class Program

{

    static void Main()

    {

        // サンプルのDictionaryを作成

        var dictionary = new Dictionary<int, string>

        {

            { 1, "Apple" },

            { 2, "Banana" },

            { 3, "Cherry" },

            { 1, "Apricot" }, // 同じキーを持つ要素を追加

            { 4, "Date" },

        };


        // DictionaryをIEnumerable<KeyValuePair<int, string>>に変換してからToLookupを使用

        var lookup = dictionary

            .Select(pair => pair)

            .ToLookup(pair => pair.Key, pair => pair.Value);


        // グループ化されたデータを出力

        foreach (var group in lookup)

        {

            Console.WriteLine($"Key: {group.Key}");

            Console.WriteLine("Values:");

            foreach (var value in group)

            {

                Console.WriteLine(value);

            }

            Console.WriteLine();

        }

    }

}

```


このコードでは、`Dictionary<int, string>`を`IEnumerable<KeyValuePair<int, string>>`に変換してから`ToLookup`メソッドを使用して、キーに基づいてグループ化しています。最終的に、キーごとにグループ化されたデータを出力しています。






お気に入りの記事を「いいね!」で応援しよう

Last updated  2024.04.27 10:11:20


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x

© Rakuten Group, Inc.
Mobilize your Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: