SortedList<string, Keyword> ResultList 怎么按照Keyword类排序啊
时间:2011-12-24
来源:互联网
class Keyword :IComparable<Keyword> { public int StartIndex; public int EndIndex; public int Count; public string KeyWordString; } SortedList<string,Keyword> mylist=new SortedList<string,Keyword>();
我想给mylist排序 按照Keyword类中的count 也就是说如果count越大 mylist中的这个entry排名越靠前
如果不可以 有没有其他类似的类 或者方法可以实现
作者: hypnoz2012spring 发布时间: 2011-12-24
然后添加后调用 list.Sort()
作者: Sandy945 发布时间: 2011-12-24
如果你充分利用 SortedList 的特性,那么在Add时候就排序了。 var list = new SortedList<string, Keyword>(); var k0 = new Keyword { Count = 0 }; var k1 = new Keyword { Count = 1 }; var k2 = new Keyword { Count = 2 }; // 注意这里是反过来Add的。 list.Add(k2.Count.ToString("0000"), k2); list.Add(k1.Count.ToString("0000"), k1); list.Add(k0.Count.ToString("0000"), k0); foreach (var k in list) Console.WriteLine(k.Key); // 输出:0000, 0001, 0002 如果你要再排序,可以直接用 Linq: // 按照 Count 倒排序 var someOrdersList = list.OrderByDescending(x => x.Value.Count); foreach (var k in someOrdersList) Console.WriteLine(k.Key);
作者: fangxinggood 发布时间: 2011-12-24
比如 我需要mylist.get("KeyWordString") 获得这个entry
作者: hypnoz2012spring 发布时间: 2011-12-24
作者: fangxinggood 发布时间: 2011-12-24
你可以用 Dictionary ,然后按value 排个序
作者: Sandy945 发布时间: 2011-12-24
就是定义一个 List<KeyValuePair<string,Keyword>> list
Dictionary <string,Keyword> dic
它是有序的,然后根据 list[index] 上 dic 中找对应项即可
eg: dic[list[index].Key]
作者: Sandy945 发布时间: 2011-12-24
还有个一个技巧,你可以用额外的存储来帮Dictionary 排序
就是定义一个 List<KeyValuePair<string,Keyword>> list
Dictionary <string,Keyword> dic
它是有序的,然后根据 list[index] 上 dic 中找对应项即可
eg: dic[list[index].Key]
+1
作者: fangxinggood 发布时间: 2011-12-24
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28