unity3dC#的List升序降序排序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了unity3dC#的List升序降序排序相关的知识,希望对你有一定的参考价值。

参考技术A List.Sort有三种结果 1,-1,0分别是大,小,相等
升序降序比较,默认List的排序是升序排序
如果要降序排序,也很简单,只需要在前面加一个负号

对于非数值类型比较用.CompareTo(...),基于IComparable接口。基本上C#的值类型都有实现这个接口,包括string。
而数值类型也可以自己比较。排序时左右两个变量必须是左-比较-右,切记不可反过来比较。
sort方法官方推荐的 命名方式是x(左),y(右) 。对于复杂的比较 可以分出来,单独写成函数
多权重比较
假设需要tuple里item2的值优先于item1。这个时候只要给比较结果*2即可。

// List按照指定字段进行排序

java List 排序,升序,降序


import java.util.*;


public class EntrySets {

public static void main(String[] args) {
Map<Object, Object> map = new HashMap<Object, Object>();
map.put("k1", "v1");
map.put("k2", "v2");
getItem(map);
List<Object> kk = new ArrayList<Object>();
kk.add("1");
kk.add("aa");
kk.add("A");
print(sortList(kk));

}


static void getItem(Map map) {
map.forEach((key, value) -> print(key + ":" + value));
}

static void iterByKey(Map map) {
/** iter map by key */
for (Object k : map.keySet()) {
String v = map.get(k).toString();
}
}

static void print(Object o) {
System.out.println(o);
}

static List sortList(List list){
Collections.sort(list);
// 反转
//Collections.reverse(list);
return list ;
}
}

以上是关于unity3dC#的List升序降序排序的主要内容,如果未能解决你的问题,请参考以下文章

unity的list列表操作(结合Linq整理的一些高级写法SortWhere等)

java一段数字 分割的升序降序 奇偶数分开排序

python 根据两个字段排序, 一个升序, 一个降序

Java 集合多条件多规则排序 升序 降序 空值处理

Java 集合多条件多规则排序 升序 降序 空值处理

sort和sorted深入理解----引子:多维列表,如何实现第一个元素升序,第二个元素降序