using System.Collections.Generic;
public static void Main()
List<Person> personList = new List<Person>();
personList.Add(new Person { Age = 10, Name = "John" });
personList.Add(new Person { Age = 15, Name = "Ann" });
personList.Add(new Person { Age = 8, Name = "Kevin" });
Console.WriteLine("---------Sắp xếp theo tuổi-----------");
personList.Sort(new PersonAgeComparer());
foreach (var item in personList)
Console.WriteLine(item.Name + ":" + item.Age);
Console.WriteLine("---------Sắp xếp theo tên-----------");
personList.Sort(new PersonNameComparer());
foreach (var item in personList)
Console.WriteLine(item.Name + ":" + item.Age);
public int Age { get; set; }
public string Name { get; set; }
class PersonAgeComparer: IComparer<Person>
public int Compare(Person x, Person y)
return x.Age.CompareTo(y.Age);
class PersonNameComparer: IComparer<Person>
public int Compare(Person x, Person y)
return x.Name.CompareTo(y.Name);