C# Dictionary 的操作集合

工作的需要用到了词典,所以对 Dictionary 进行了一次回归,毕竟以前惯用的是哈希,对于性能的比较,看了几篇文章,大家的第一反应都是 dictionary,毕竟是泛型.....;但是毕竟实践是证明真理的唯一标准。后面测试后会上对比结果。

         //实例化 程序集:mscorlib  命名空间:using System.Collections.Generic;

            //其它常见属性和方法的说明:
            //Comparer:获取用于确定字典中的键是否相等的 IEqualityComparer。
            //Count:获取包含在 Dictionary中的键/值对的数目。
            //Item:获取或设置与指定的键相关联的值。
            //Keys:获取包含 Dictionary中的键的集合。
            //Values:获取包含 Dictionary中的值的集合。
            //Add:将指定的键和值添加到字典中。
            //Clear:从 Dictionary中移除所有的键和值。
            //ContainsKey:确定 Dictionary是否包含指定的键。
            //ContainsValue:确定 Dictionary是否包含特定值。             
            //GetEnumerator:返回循环访问 Dictionary的枚举数。
            //GetType:获取当前实例的 Type。 (从 Object 继承。)
            //Remove:从 Dictionary中移除所指定的键的值。
            //ToString:返回表示当前 Object的 String。 (从 Object 继承。)
            //TryGetValue:获取与指定的键相关联的值。

            Dictionary<int, string> myDic = new Dictionary<int, string>();

            //键是唯一 值可任意
            myDic.Add(1, "小红");
            myDic.Add(2, "小明");
            myDic.Add(3, "小张");
            myDic.Add(4, "小李");


            //随意输出 这里需要注意的一点是[]里面对应的是健的值,并不是下标,这里不存在[0]的情况 输出值:
            //Console.WriteLine(myDic[1]);

            //通过KeyValuePair遍历元素
            foreach (KeyValuePair<int, string> kvp in myDic)
            {
                //Console.WriteLine("Key = {0}, Value = {1}", kvp.Key, kvp.Value);
            }

            //紧遍历key
            foreach ( var key in myDic.Keys)
            {
                //Console.WriteLine("key={0}",key);
            } 

            //紧遍历value
            foreach (var value in myDic.Values)
            {
               // Console.WriteLine("value={0}",value);
            }


            //获取指定键的值
            string s = string.Empty;

            if (myDic.TryGetValue(2,out s))
            {
                Console.WriteLine("s={0}",s);
            }


            Console.ReadLine();


对哈希(Hash)做了一些性能的测试,

 

转载于:https://www.cnblogs.com/QingLang-Raymond/articles/5340575.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值