C# List多字段排序

来源:互联网 发布:0--100水仙花数java 编辑:程序博客网 时间:2024/05/17 08:18

根据符文的品质和战斗力排序,当品质一致的按战斗力排序;

int SortRunesInfoByQualityAndfightPower(FuWenShowVO obj1, FuWenShowVO obj2)    {        int res = 0;        if ((null == obj1) && (null == obj2)) return 0;        else if ((null != obj1) && (null == obj2)) return 1;        else if ((null == obj1) && (null != obj2)) return -1;        int quality1 = FuWenBaseManager.Instance.GetItem((int)obj1.fuwenId).quality;        int quality2 = FuWenBaseManager.Instance.GetItem((int)obj2.fuwenId).quality;        if (quality1 > quality2) res = -1;        else if (quality1 == quality2)        {            if (obj1.fightPower > obj2.fightPower) res = -1;            else res = 1;        }        else res = 1;        return res;    }
-1表示此实例按排序顺序在 obj 前面,在这里即obj1放到obj2的前面;
0表示此实例与 obj 在排序顺序中出现的位置相同;
1表示此实例按排序顺序在 obj 后面,在这里即obj1放到obj2的后面;
调用方法:
List<FuWenShowVO> list = new List<FuWenShowVO>();/*  ........*/list.Sort(SortRunesInfoByQualityAndfightPower);
参考文章


0 0
原创粉丝点击