今天要对List排序,上网查了很多方法都感觉比较麻烦,现在终于找到了两种比较简便的方式,在此写出来,防止忘记!同时供大家参考!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace ListSort
- {
- class Program
- {
- static void Main(string[] args)
- {
- List<Customer> listCustomer = new List<Customer>();
- listCustomer.Add(new Customer { name = "客户1", id = 0 });
- listCustomer.Add(new Customer { name = "客户2", id = 1 });
- listCustomer.Add(new Customer { name = "客户3", id = 5 });
- listCustomer.Add(new Customer { name = "客户4", id = 3 });
- listCustomer.Add(new Customer { name = "客户5", id = 4 });
- listCustomer.Add(new Customer { name = "客户6", id = 5 });
- ///升序
- List<Customer> listCustomer1 = listCustomer.OrderBy(s => s.id).ToList<Customer>();
- //降序
- List<Customer> listCustomer2 = listCustomer.OrderByDescending(s => s.id).ToList<Customer>();
- //Linq排序方式
- List<Customer> listCustomer3 = (from c in listCustomer
- orderby c.id descending //ascending
- select c).ToList<Customer>();
- Console.WriteLine("List.OrderBy方法升序排序");
- foreach (Customer customer in listCustomer1)
- {
- Console.WriteLine(customer.name);
- }
- Console.WriteLine("List.OrderByDescending方法降序排序");
- foreach (Customer customer in listCustomer2)
- {
- Console.WriteLine(customer.name);
- }
- Console.WriteLine("Linq方法降序排序");
- foreach (Customer customer in listCustomer3)
- {
- Console.WriteLine(customer.name);
- }
- Console.ReadKey();
- }
- }
- class Customer
- {
- public int id { get; set; }
- public string name { get; set; }
- }
- }
效果展示:
![](http://hi.csdn.net/attachment/201102/24/0_1298543747Pi2P.gif)