List里的值进行分组!

Posted

tags:

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

如何对这个List<int> ls=new list()1,1,1,3,4,5,8,8;根据相同的值分到一组内?

            //using System.Linq;
            List<int> ls = new List<int>()  1, 1, 1, 3, 4, 5, 8, 8 ;
            var numrGroups =
               from n in ls
               group n by n into ng
               select new  k = ng.Key, c = ng.Count() ;
            foreach (var i in numrGroups)
            
                Console.WriteLine("num=0,count=1", i.k, i.c);
            
            Console.ReadLine();

参考技术A list不能这么写吧!List<int> ls=new list()1,1,1,3,4,5,8,8;,这个本身就是错误的 参考技术B 只能根据if判断

Python通过Groupby实现分组

参考技术A 如果有对list里的元素按照某个字段进行分组的需求的话,可以通过itertools模块中的groupby实现。

举例,list中包含3个元素,希望通过country字段进行分组,再按组操作,通过itemgetter可以取dict中key。

效果:

也可以通过lambda取dict中的字段。

除此之外,还可以实现自定义分组

效果:

以上是关于List里的值进行分组!的主要内容,如果未能解决你的问题,请参考以下文章

使用Java代码按照某属性进行分组

对list集合的内容分组

报表使用分组

按两个参数对字典列表进行分组并计算分组值

java怎样取list里的数据

java List按照对象的属性进行分组