您的位置:首页 > 其它

List<>根据指定属性排序(实现IComparer接口)

2012-08-25 11:45 531 查看
[b]问题:[/b]

有一个List<CourseList> testlist,类CourseList中有CourseId, CourseName,CourseStatus,TeacherName,LevelName,StudentNumber这五个属性。现在想实现testlist的按CourseList类的各个属性排序。

[b]解决办法:[/b]

调用sort方法

CourseListComparer courselistComparer = new CourseListComparer(CompareType.CourseId);

testList.Sort(courselistComparer);




[b]原因:[/b]

C#中的List<>有两个Sort方法,一个是无参的,一个是带IComparer参的。无参的方法是按默认的比较器进行排序,有参的就要自己定义一个实现IComparer接口。

实现ICompare接口就需要实现Compare方法。Compare方法有两个要比较的输入,根据自己定义的比较规则,返回int值,0表示相等,1表示x>y,-1表示x<y.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: