Dictionary与SortedDictionary

Dictionary是无序的,如果想排序,需要使用SortDictionary.

Dictionary本身可以使用linq或者自定义排序,SortDictionary只要插入元素就自动按Key进行了排序

1、下面是一个简单用法示例

static void Main(string[] args)
{
    SortedDictionary<int, string> sd = new SortedDictionary<int, string>();
    sd.Add(3, "张三");
    sd.Add(1, "李四");
    sd.Add(2, "王五");

    foreach (var item in sd)
    {
        Console.WriteLine(item.Value);
    }
}

 

 2、SortedDictionary依然支持lLinq Order语句

static void Main(string[] args)
{
    SortedDictionary<int, string> sd = new SortedDictionary<int, string>();
    sd.Add(3, "张三");
    sd.Add(1, "李四");
    sd.Add(2, "王五");

    foreach (var item in sd)
    {
        Console.WriteLine(item.Value);
    }

    var v=sd.OrderByDescending(c => c.Value);
    foreach (var item in v)
    {
        Console.WriteLine(item.Value);
    }
}

返回的是IOrderedEnumerable<TElement>类型,

 

posted @ 2018-03-20 11:43  zhaogaojian  阅读(7096)  评论(3编辑  收藏  举报