List集合分组

Posted guozewen

tags:

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

       依据班级对学生进行分组
         private class Student
        {
            public string StuName { getset; }
            public string StuClassID { getset; }
        }

        public static void ListGroup()
        {
            List<Student> slist = new List<Student>(){
            new Student { StuName = "王小明701", StuClassID = "701班" },
            new Student { StuName = "李晓红701", StuClassID = "701班" },
            new Student {  StuName = "红小鸡701", StuClassID = "701班" },
            new Student { StuName = "李大大801", StuClassID = "801班" },
            new Student { StuName = "林炫均701", StuClassID = "701班" },
            new Student { StuName = "红孩儿901", StuClassID = "901班" },
            new Student { StuName = "丽水市901", StuClassID = "901班" },
            new Student { StuName = "徐税务801", StuClassID = "801班" },
            };
            //方式1
            var groupres = slist.GroupBy(items => items.StuClassID);
            //方式2
            groupres = from s in slist
                       group s by s.StuClassID;

            foreach (var item in groupres)
            {
                //groupres:IEnumerable<IGrouping<string, Student>>
                //item.Key:分组的键
                //item:分组后的数据源
                Console.WriteLine(item.Key);
                foreach (Student s in item)
                {
                    Console.WriteLine(s.StuName);
                }
            }
        }

测试结果:
技术分享图片
















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

List集合分组

170809 把list集合中的数据按照一定数量分组

java小技能:对list集合根据条件进行分组过滤和字段筛选

java中list集合对象按照某一个属性分组

Java8自定义条件让集合分组

Java8自定义条件让集合分组