您的位置:首页 > 移动开发 > Objective-C

C#中对List<Object>泛型集合,根据对象的某一属性进行升序排序

2018-03-13 16:22 1011 查看
在开发中可能会有如下需求:

1.List<Student>students为学生类Student的集合

2.Student有一int类型的属性Age(年龄)

3.要求对List<Student> students中的学生按照年龄从小到大(即升序)进行重新排序。

实现方法:

1.新建一个名为ReComparer的类,该类需要继承IComparer<students>接口,并在该类中重写Compare()方法,在该方法中实现对Student的Age属性的大小比较;

/// <summary>
/// Student对象的Age属性比较器
/// 重新Compare方法
/// </summary>
public class ReComparer : IComparer<Student>
{
//对年龄进行比较
public int Compare(Student s1, Student s2)
{
return (s1.Age.CompareTo(s2.Age));
}
}

2.调用students.Sort(New ReComparer()),实现排序。

List<Student> students;
//假设students中已存储了若干Student对象,且每个Student对象的Age属性均赋值
students.Sort(new ReComparer());
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息