List.Sort() 小小技巧

List.sort() 默认的情况下是从小到大的排列。

例如:

List < int >  list  =   new  List < int > ();
            list.Add(
- 2 );
            list.Add(
10 );
            list.Add(
8 );
            list.Add(
6 );
            list.Add(
4 );
list.Sort();

这时候的输出结果是 -2,4,6,8,10;

如果,要将list中的数据从大到小怎么排列呢?这将怎么实现呢。请看下面代码:

1  list.Sort(
2       delegate ( int  a,  int  b)
3      {
4          return  a.CompareTo(b);
5      }
6  );
7 
8 
9  list.Sort((a, b)  => b.CompareTo(a));  // lamda expression

在代理中1--6行代码中,是从小到大排列的,第9行 只要将后面的参数与前面的参数进行对比,这样返回的结果,将是一个从大到小排列了。这种方式适合于字符串等许多类型的排序。

和大家分享一下 :)


转自:http://www.cnblogs.com/tomin/archive/2011/09/20/2182483.html

你可能感兴趣的:(List.Sort() 小小技巧)