List分组后存入Dictionary

Posted 这一站幸福0519

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了List分组后存入Dictionary相关的知识,希望对你有一定的参考价值。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace lambdaTest
{
    class Program
    {
        static void Main(string[] args)
        {
            List<user> userset = new List<user>();
            for (int i = 0; i < 10; i++)
            {
                user u = new user();
                u.name = i.ToString() + "的名字";
                u.age = i;
                u.sex = (i % 2 == 0) ? "男" : "女";
                userset.Add(u);
            }
            var query = userset.GroupBy(m => m.sex).ToList().ToDictionary(n=>n.Key);
            Dictionary<string, IGrouping<string, user>> d = new Dictionary<string, IGrouping<string, user>>();
            foreach (var item in query)
            {
                d.Add(item.Key,item.Value);
            }
            foreach (var item in d)
            {
                foreach (var i in item.Value)
                {
                    Console.WriteLine(item.Key + " "+i.name);
                }
            }
           
            Console.ReadKey();
        }
    }
    public class user
    {
        public string name;
        public string sex;
        public int age;
    }
}

  结果:

 

以上是关于List分组后存入Dictionary的主要内容,如果未能解决你的问题,请参考以下文章

在字典的列表中添加变量(Dictionary<Key,List<var>)unity C#

在 C# 中对字典列表进行分组

Java8 Stream针对List先分组再求和最大值最小值平均值等

LINQ 分组为字典对象

Dictionary vs List 效率

Unity3D游戏开发——物品存储:List与Dictionary