日期:2014-05-17  浏览次数:20996 次

Dictionary字典值排序问题求指教
Dictionary<string, int> dic = new Dictionary<string, int>();

内容为:
张三 5
老刘 0
李四 7
王二 1
李天天 5
.
.
.
需要排序为:
老刘 0
王二 1
张三 5
李天天 5
李四 7

网上找了很多资料都无法实现,求高手指导。      
Dictionary 排序

------解决方案--------------------
http://hi.baidu.com/pctonc/item/5fd3fee9585e68205a2d64a0
------解决方案--------------------
static void Main(string[] args)
        {
            Dictionary<string, int> dic = new Dictionary<string, int>();
            dic.Add("张三", 5);
            dic.Add("老刘", 0);
            dic.Add("李四", 7);
            dic.Add("王二", 1);
            dic.Add("李天天", 5);

            var result = dic.OrderBy(x => x.Value);
            result.ToList().ForEach(x => Console.WriteLine(string.Join(" ", x.Key, x.Value)));
        }

------解决方案--------------------
直接用result转一下吧

 NewDicCount = result.ToDictionary(o => o.Key, o => o.Value);