需求可以抽象为一个小例子,比如现在一个学生是一个对象,它具有学号这个属性,要求按照学号排序。

首先写一个比较器,很简单:

public class StudentComparer : IComparer
{
    //实现按xuehao排序
    public int Compare(Student x, Student y)
    {
        return (x.xuehao.CompareTo(y.xuehao));
    }
}

使用也很简单:

List stu = new List();

…………………

stu.Sort(new StudentComparer());