您的位置:首页 > 教程资讯 > 皇冠体育的网址 > ASP.NET > list泛型自定义排序示例

list泛型自定义排序示例

发布于:2016-04-26 17:35:44   分享到:

代码如下:
static void Main(string[] args)
{
??? Employee employee = new Employee();
??? //设置初始值
??? List employeeList = new List();
??? employeeList.Add(new Employee() { EmpId = "001", EmpName = "Tony" });
??? employeeList.Add(new Employee() { EmpId = "002", EmpName = "Mack" });
??? employeeList.Add(new Employee() { EmpId = "003", EmpName = "Jon" });
??? employeeList.Add(new Employee() { EmpId = "004", EmpName = "Dawei" });
??? employeeList.Add(new Employee() { EmpId = "005", EmpName = "Jack" });
??? employeeList.Add(new Employee() { EmpId = "006", EmpName = "Abby" });
??? employeeList.Add(new Employee() { EmpId = "007", EmpName = "Carrie" });
??? //指定置前排序元素
??? List toSortList = new List();
??? toSortList.Add(new Employee() { EmpId = "003", EmpName = "Jon" });
??? toSortList.Add(new Employee() { EmpId = "005", EmpName = "Jack" });
??? toSortList.Add(new Employee() { EmpId = "007", EmpName = "Carrie" });
??? //自定义 排序委托
??? employeeList.Sort((Employee x, Employee y) => (toSortList.Count(e => e.EmpId == y.EmpId) - toSortList.Count(e => e.EmpId == x.EmpId)));
}

public class Employee
{
??? public string EmpId
??? {
??????? get;
??????? set;
??? }

??? public string EmpName
??? {
??????? get;
??????? set;
??? }
}

经过排序后将原本list中按001,002,003,排列的元素排序为003,005,007,001,002,004.。。。将指定的003,005,007,排列在List最前

标签:

list

关于我们  加入我们  版权声明  商务合作  友情链接  网站地图  站长统计

脚本大全-脚本语言之家-版权所有 

Copyright (C) 2016 jiaoben.net, All Rights Reserved