4个回答
推荐于2017-05-26
展开全部
原则是必须继承IComparer<T>接口,实现int IComparer<T>.Compare(T t1, T t2)方法
例如:假定我们要把一个row列的id按照降序排列(升序以此类推).1. 先写好排序接口规则:public class ListComparerByIdDesc : IComparer<DataRow> { #region IComparer< DataRow > Members public int Compare(DataRow x, DataRow y) { return y[0].ToString().CompareTo(x[0].ToString()); } #endregion }2. List<ListRow> list=new List<ListRow>(); //对列id名进行降序排序。list.sort(ListComparerByIdDesc ());
3. 关于CompareTo方法,如果a.CompareTo(b)若a<b 则返回-1;a=b则返回0;a>b则返回1;
例如:假定我们要把一个row列的id按照降序排列(升序以此类推).1. 先写好排序接口规则:public class ListComparerByIdDesc : IComparer<DataRow> { #region IComparer< DataRow > Members public int Compare(DataRow x, DataRow y) { return y[0].ToString().CompareTo(x[0].ToString()); } #endregion }2. List<ListRow> list=new List<ListRow>(); //对列id名进行降序排序。list.sort(ListComparerByIdDesc ());
3. 关于CompareTo方法,如果a.CompareTo(b)若a<b 则返回-1;a=b则返回0;a>b则返回1;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-03-31
展开全部
C#针对List类型以及其他集合的查询的数据操作是非常完善的,对于List对象的属性进行排序也没问题。给你两个例子做参考。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
List.OrderBy(object => object.Property)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先定义比较方法
http://msdn.microsoft.com/zh-cn/library/234b841s(v=vs.80).aspx
http://msdn.microsoft.com/zh-cn/library/234b841s(v=vs.80).aspx
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询