博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# 键值对数据排序
阅读量:6516 次
发布时间:2019-06-24

本文共 1138 字,大约阅读时间需要 3 分钟。

对于键值对的数据进行排序方法总结。

 

[csharp]
 
  1. /*使用排序字典,默认只支持升序 
  2. SortedDictionary<DateTime, String> dd = new SortedDictionary<DateTime, String>(); 
  3. DateTime dt = DateTime.Now; 
  4. dd.Add(dt, "bbb"); 
  5. dd.Add(dt.AddDays(-1), "ccc"); 
  6. dd.Add(dt.AddDays(1), "aaa"); 
  7. //可以借助List得到降序键或值 
  8. List<String> lst = new List<String>(dd.Values); 
  9. lst.Reverse(); 
  10. */  
  11.   
  12. /*使用Linq查询 
  13. Dictionary<DateTime, String> dd = new Dictionary<DateTime, String>(); 
  14. DateTime dt = DateTime.Now; 
  15. dd.Add(dt, "bbb"); 
  16. dd.Add(dt.AddDays(-1), "ccc"); 
  17. dd.Add(dt.AddDays(1), "aaa"); 
  18.  
  19. var result = from pair in dd orderby pair.Key descending select pair; 
  20. List<String> lst = new List<String>(); 
  21. foreach (var kv in result) 
  22.     lst.Add(kv.Value); 
  23. //或 
  24. Dictionary<DateTime, String> dd2 = result.ToDictionary(p=>p.Key, p=>p.Value); 
  25. */  
  26.   
  27. //使用扩展方法  
  28. Dictionary<DateTime, String> dd = new Dictionary<DateTime, String>();  
  29. DateTime dt = DateTime.Now;  
  30. dd.Add(dt, "bbb");  
  31. dd.Add(dt.AddDays(-1), "ccc");  
  32. dd.Add(dt.AddDays(1), "aaa");  
  33.   
  34. Dictionary<DateTime, String> dicAsc = dd.OrderBy(p=>p.Key).ToDictionary(p=>p.Key, p=>p.Value);  
  35. Dictionary<DateTime, String> dicDesc = dd.OrderByDescending(p=>p.Key).ToDictionary(p=>p.Key, p=>p.Value); 

转载地址:http://ceafo.baihongyu.com/

你可能感兴趣的文章
多核编程的四层境界
查看>>
Windows Phone 实用开发技巧(11):让StackPanel中的控件靠右对齐
查看>>
小记如何修改xen模块
查看>>
实时游戏对战引擎Photon
查看>>
C语言位操作控件属性
查看>>
nginx的安装及基本配置,及多个域名服务
查看>>
Servlet访问postgresql数据库并提取数据显示在前端jsp页面
查看>>
不改一行代码定位线上性能问题
查看>>
定义运算符
查看>>
git管理
查看>>
idea演示
查看>>
告别暗黄皮肤变水嫩皮肤的8个小习惯
查看>>
加强Eclipse代码自动提示的方法
查看>>
GNS3-地址重叠环境中部署IPsec
查看>>
exchange online 用户疑问之许可证和用户数据归档
查看>>
QImage Mat IplImage 之间的相互转换
查看>>
使用eclipse与android studio 在开发自定义控件时的区别
查看>>
我的友情链接
查看>>
mysql学习笔记
查看>>
django 问题解决
查看>>