C# 排序 List.Sort

原创 2012年03月21日 16:12:58

 1.先写一个继承类IComparer,重载比较函数Compare,写自定义的比较方法。例:  

    public class CPointComparer : IComparer<Point>
    {
        public int Compare(Point p1, Point p2)
        {
            if (p1.X > p2.X)
                return 1;
            else if (p1.X < p2.X)
                return -1;
            else if (p1.Y > p2.Y)
                return 1;
            else if (p1.Y < p2.Y)
                return -1;
            else return 0;
        }      
    }
2.以该方法为基础比较,例:        
            Point [] pt = new Point [4];
            pt[0] = new Point(5, 1);
            pt[1] = new Point(2, 2);
            pt[2] = new Point(5, 2);
            pt[3] = new Point(7, 2);
            List<Point> lp = new List<Point>();
            for (int i = 0; i < 4;i++ )
            {
                lp.Add(pt[i]);
            }
            lp.Sort(new CPointComparer());

相关文章推荐

C# List.sort排序详解(多权重,升序降序)

很多人可能喜欢Linq的orderBy排序,可惜U3D里面linq在Ios上会报错,所以就必须使用list的排序。 其实理解了并不难       升序降序比较 ...

C# List排序Sort

List类可以使用Sort()方法对元素排序。 Sort()方法定义了几个重载方法,分别是   public void List.Sort(),不带有任何参数的Sort方法   public v...

C# 中 List.Sort运用(IComparer<T>)排序用法

在项目中由于要解析一个箱单号,要求从小到大的顺序。由于循环从数据库取出来取得值不是按照从小到大排序的因此需要自己转换下。 本篇文章用到了 ListTSort 方法 (IComparerT)方法重载 ...

C#中List的排序用法(Sort)

由于项目的原因用到了List 泛型,Framework都已经到了3.5了。可是我一直都没有正式的用过2.0很是遗憾。特别是对泛型更是一知半解,今天又弄了些资料觉得挺有用就收集到博客上来了。闲话少叙,今...

C#中List的排序(Sort)

本文原创版权归 博客园 灵动生活 所有,转载请标明原创作者及出处,以示尊重! 作者:灵动生活 原文:http://www.cnblogs.com/ywqu/archive/2009/01/21/1...
  • kenkao
  • kenkao
  • 2013年08月13日 10:30
  • 3891

C# list sort 排序

前几天看到C#的一个排序,感觉很奇怪,于是抽出时间来研究一下。 list的排序方法为Sort,有4种重载形式: 1 public void Sort(); 使用默认比较器对整个 System....

C#简单排序——Sort(2005)

  • 2010年03月05日 16:22
  • 36KB
  • 下载

Collections.sort方法对list排序

用Collections.sort方法对list排序有两种方法 第一种是list中的对象实现Comparable接口,如下: /** * 根据order对User排序 */ public c...

C# Sort 按年龄排序

  • 2017年03月15日 23:28
  • 8KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C# 排序 List.Sort
举报原因:
原因补充:

(最多只允许输入30个字)