项目中可能需要用到Dictionary 排序,于是先做了一个小demo ,网上搜索真的没有能满足我需要的,都是类似的,于是理解改造,一上午就在查找,实践中过去了。现在把它实现了,把代码贴出来,算是一个笔记吧。希望给需要的人也一个参考。
一、C# 版本
代码
public void gettest() { Dictionary<string, string> dic1 = new Dictionary<string, string>(); dic1.Add("2015-4-01", "2015-4-05"); dic1.Add("2015-4-29", "2015-5-01"); dic1.Add("2015-4-07a", "2015-4-10"); dic1.Add("2015-4-07b", "2015-4-10"); dic1.Add("2015-5-02", "2015-5-08"); dic1.Add("2015-4-11", "2015-4-20"); dic1.Add("2015-4-21", "2015-4-28"); Dictionary<string, string> dic1Asc = dic1.OrderBy(o => o.Key).ToDictionary(o => o.Key, p => p.Value); Dictionary<string, string> dic1desc = dic1.OrderByDescending(o => o.Key).ToDictionary(o => o.Key, p => p.Value); Dictionary<string, string> dic1Asc1 = (from d in dic1 orderby d.Key ascending select d).ToDictionary(k => k.Key, v => v.Value); Dictionary<string, string> dic1desc2 = (from d in dic1 orderby d.Key descending select d).ToDictionary(k => k.Key, v => v.Value); foreach (KeyValuePair<string, string> kvp in dic1Asc) { Response.Write(string.Format("开始日期 = {0}, 结束日期 = {1} <br/>", kvp.Key, kvp.Value)); } } public void gettest2() { Dictionary<string, string> dic1 = new Dictionary<string,