IComparable IComparer
IComparable<T>
对自定义类的对象排序
实现泛型集合中以类为元素时的sort排序功能
public int CompareTo(Student other)
{
return
this.Name.CompareTo(other.Name);
}
IComparer<T>
比较两个对象
实例化一下对象 Sort(T) T为实例化对象,用以实现特殊排序方式
//姓名比较器
public class
NameComparer : IComparer<Student>
{
#region
IComparer<Student> 成员
public int
Compare(Student
x, Student y)
{
return
(x.Name.CompareTo(y.Name));
}
#endregion
}
//姓名比较器降序
public class
NameComparerDesc : IComparer<Student>
{
#region
IComparer<Student> 成员
public int
Compare(Student
x, Student y)
{
return
(y.Name.CompareTo(x.Name));
}
#endregion
}
//年龄比较器
public class
AgeComparer : IComparer<Student>
{
#region
IComparer<Student> 成员
public int
Compare(Student
x, Student y)
{
return
(x.Age.CompareTo(y.Age));
}
#endregion
}
}