C#Dictionary它是HashTable的泛型优化版本

using System;
using System.Collections.Generic;

/*
    Dictionary<K,V> 字典集合

    Dictionary<K, V> 泛型集合是Hashtable集合的泛型集合,即可以指定存储数据类型的集合。
    Dictionary<K, V> 是Hashtable的泛型集合定义在System.Collections.Generic命名空间下,使用时需要先引入该命名空间,
    该泛型集合相当于同时给容器的Key和Value贴上了指定类型的标签,一旦指定泛型类型,那么该容器就只能存储指定类型的键值对数据,方便开发者操作数据。

    简要说明
        1.Hashtable:非泛型哈希表,键值都是object,装箱拆箱、类型不安全
        2.Dictionary<TKey,TValue>:泛型版哈希表,C# 专门用来替代 Hashtable
        3.底层哈希寻址、扩容、冲突处理逻辑高度一致
        4.日常开发优先用Dictionary,废弃Hashtable
    核心区别
        Hashtable:无泛型,值类型频繁装箱拆箱,性能差
        Dictionary:泛型约束,类型安全,无装箱,效率更高
    一句话总结
        Dictionary 就是 Hashtable 的泛型优化版本。
 */

namespace Dictionary它是HashTable的泛型优化版本
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Dictionary<string, int> dict = new Dictionary<string, int>();
            dict.Add("huanglin", 100);
            dict.Add("xuzhenglong", 98);
            Console.WriteLine(dict["huanglin"]);//100

            //遍历“键”
            foreach (string item in dict.Keys)
            {
                Console.WriteLine("键:" + item);
            }
            Console.WriteLine("=========================");
            //遍历“值”
            foreach (int item in dict.Values)
            {
                Console.WriteLine("值:" + item);
            }
            Console.WriteLine("=========================");
            //直接遍历“键值对”
            foreach (KeyValuePair<string, int> item in dict)
            {
                Console.WriteLine("键:{0}\t-->\t值:{1}", item.Key, item.Value);
            }

            Console.ReadKey();
        }
    }
}
posted @ 2026-05-26 15:36  人生就是修炼  阅读(2)  评论(0)    收藏  举报