程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C# 鍵值對數據排序,

C# 鍵值對數據排序,

編輯:C#入門知識

C# 鍵值對數據排序,


對於鍵值對的數據進行排序方法總結。

 

[csharp] view plaincopy
  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); 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved