C#Sort排序
来源:互联网 发布:python多线程 编辑:程序博客网 时间:2024/05/21 08:11
List 的Sort方法排序有三种结果 1,0,-1分别表示大于,等于,小于。
输出:Bob-19 Lily-20 Mary-17 Mary-18
或不实现IComparable接口而使用linq排序:
排序规则:优先级越高的越先对其进行排序,比如上面的代码,就是先对能不能被选中先排序,其次是星级,和id
1.对于数值类型的List (List<int>),直接使用Sort进行排序。
2.对于非数值类型或者自定义类型,可通过实现IComparable接口重写CompareTo方法来排序:
输出:Bob-19 Lily-20 Mary-17 Mary-18
或不实现IComparable接口而使用linq排序:
输出:Bob-19 Lily-20 Mary-17 Mary-18
public int sortOrderForCharacter(AccessoriesProfile a, AccessoriesProfile b) { bool isACan = IsCanSelectForFit(a);//是否是能够选中的配件 bool isBCan = IsCanSelectForFit(b);//是否是能够选中的配件 if (a == b) return 0; else { if (a.AccessorStar == b.AccessorStar && isACan == isBCan && a.InstanceID == b.InstanceID) return 0; else { if (isACan == isBCan) { if (a.AccessorStar == b.AccessorStar) { if (a.InstanceID == b.InstanceID) { return 0; } else { if (a.InstanceID > b.InstanceID) return -1; else return 1; } } else { if (a.AccessorStar > b.AccessorStar) return -1; else return 1; } } else { if (isACan && !isBCan) return -1; else return 1; } }} }
排序规则:优先级越高的越先对其进行排序,比如上面的代码,就是先对能不能被选中先排序,其次是星级,和id
阅读全文
0 0
- C#Sort排序
- c++STL sort()排序
- 结构体排序,sort排序,c++sort
- (C#)排序算法 Sort Algorithm
- (C#)冒泡排序 Bubble Sort
- (C#)选择排序 Selection Sort
- (C#)插入排序 Insertion Sort
- Bubble Sort (冒泡排序 C++)
- Quick Sort (快速排序 C++)
- sort,qsort排序 (C++)
- [C++]排序函数sort()用法
- C ++排序函数sort(),qsort()
- 快速排序(quick sort) C ~
- C语言快速排序之sort排序
- 归并排序:Sort:Merge sort using temporary int array(c++)
- Bubble Sort in C#(冒泡排序算法)
- C++: quick sort(快排序)
- c++-algorithm 头文件排序sort
- Linux下查看磁盘与目录的容量——df、du
- tensorflow 实现神经网络带正则化
- 把Java程序打包成jar文件包并执行
- Redis命令
- caffe-fcn-net.py
- C#Sort排序
- A标签中通过href和onclick传递的this对象实现思路
- makefile强制目标
- 山东教师教育网-404、登录、密码找回、常见问题、绑定已有账户
- java Sting 如何替换指定位置的字符
- 判断手机系统的版本号
- 解决Spring文件下载时文件损毁问题
- Spring MVC 环境搭建(二)
- Java的反射