[C#] 对List进行分组排序后输出

Student 类:

    public class Student
    {
        public int ID { get; set; }

        public string Name { get; set; }

        public int Age { get; set; }

        public string Sex { get; set; }
    }

Demo:

            List<Student> lsStudent = new List<Student>()
            {
                new Student { ID = 1 ,Name = "1", Age = 25, Sex = "男" },
                new Student { ID = 2, Name = "2", Age = 18, Sex = "女" },
                new Student { ID = 3, Name = "3", Age = 13, Sex = "男" },
                new Student { ID = 4, Name = "4", Age = 23, Sex = "男" },
                new Student { ID = 5, Name = "5", Age = 22, Sex = "女" }
            };

            foreach (IGrouping<string, Student> group in lsStudent.GroupBy(x => x.Sex))
            {
                Console.WriteLine("当前学生的性别是:{0}", group.Key);
                foreach (Student student in group.OrderBy(a => a.Age))//不排序直接输出的话:Student student in group
                {
                    Console.WriteLine("姓名:" + student.Name + " 年龄:" + student.Age);
                }
            }

输出结果:

原文地址:https://www.cnblogs.com/linhuide/p/8542223.html

时间: 2024-08-06 18:05:40

[C#] 对List进行分组排序后输出的相关文章

输入password登录到主界面,录入学生编号,排序后输出

n 题目:输入password登录到主界面,录入学生编号,排序后输出 n 1.  语言和环境 A.实现语言 C语言 B.环境要求 VC++ 6.0 n 2.  要求 请编写一个C语言程序.将若干学生编号按字母顺序(由小到大)输出. 程序的功能要求例如以下: 1)  输入password"admin",正确则进入主界面,错误则直接推出(exit(0)): 2)从键盘输入5个学生编号"BJS1001","BJS2001"."BJS1011&

将字符串中单词经排序后输出

思路 先将字符串中的单词分割保存至二维数组中,再经排序后输出.水题,直接上代码了. 代码 /************************************************************************* > File Name: words_sort.c > Author: KrisChou > Mail:[email protected] > Created Time: Sun 24 Aug 2014 08:41:42 PM CST *****

输入密码登录到主界面,录入学生编号,排序后输出

n 题目:输入密码登录到主界面,录入学生编号,排序后输出 n 1.  语言和环境 A.实现语言 C语言 B.环境要求 VC++ 6.0 n 2.  要求 请编写一个C语言程序,将若干学生编号按字母顺序(由小到大)输出. 程序的功能要求如下: 1)  输入密码"admin",正确则进入主界面,错误则直接推出(exit(0)): 2)从键盘输入5个学生编号"BJS1001","BJS2001","BJS1011", "S

Java 练习:读取该文件内容,并按照自然顺序排序后输出到 另一个文件中

package com.swift; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; public class IO_sort_content { public static void main(String[] args) { /* * 已知文件 a.txt 文件中的内容为"bcde

已知文件 a.txt 文件中的内容为“bcdeadferwplkou”, * 请编写程序读取该文件内容,并按照自然顺序排序后输出到 b.txt 文件中。 * 即 b.txt 中的文件内容应为“abcd…………..”这样的顺序。

import java.io.*;class SortChar{ private String str; private char arrayList[]; private BufferedReader br; //字符流 private File f; //读取的文件 SortChar( String s ) { f=new File( s ); } public void start() { if( inputData()==-1 ) { return; } //对字符数组进行冒泡排序 so

文件中有一组整数,排序后输出到另一个文件中

#include <iostream> #include <fstream> using namespace std; void Order(vector<int> &data){ int count = data.size(); int tag = false; for(int i = 0; i < count; i++){ for(int j = 0; j < count - i - 1; j++){ if(data[j] > data[j

iOS是开发之 对数组中的元素排序后输出

NSArray *arr = @[@1,@9,@4,@7,@0,@-5,@3]; arr = [arr sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) { //        return [obj1 compare:obj2];    // 按升序返回 return [obj2 compare:obj1];     // 安降序返回 }]; NSLog(@"%@",arr);

[MySQL] 分组排序取前N条记录以及生成自动数字序列,类似group by后 limit

前言:         同事的业务场景是,按照cid.author分组,再按照id倒叙,取出前2条记录出来.        oracle里面可以通过row_number() OVER (PARTITION BY cid,author ORDER BY id DESC) 表示根据cid,author分组,在分组内部根据id排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的),而mysql数据库就没有这样的统计函数,需要自己写复杂的sql来实现. 1,录入测试数据 USE csd

让无序数组元素进行排序,排序完后将排序后元素对应的原先元素的位置输出

题目: 让无序数组元素进行排序,排序完后将排序后元素对应的原先元素的位置输出 (1)方法1 方法1:先将数组元素原先的对应位置记录在另一个数组中       并在进行选择排序的过程中,交换数组元素的同时也交换对应位置数组中的对应元素值 /* 选择法排序 并在排序后的数组元素在原先数组的对应位置输出 方法1:先将数组元素原先的对应位置记录在另一个数组中 并在进行选择排序的过程中,交换数组元素的同时也交换对应位置数组中的对应元素值 */ #include <iostream> using name