C#中Dictionary<Tkey,Tvalue>泛型集合漫谈

来源:互联网 发布:网络大电影制作流程 编辑:程序博客网 时间:2024/06/06 11:41
Dictionary<TKey,Tvalue>关于这个泛型集合出现的原因,为什么出现。首先我们需要了解HashTable   这个集合也是在add元素的时候根据key和value进行存储的。但是这个HashTable中的Add方法是这样的  Add(object key, object value)这样各种类型的数据都是可以存储的,看起来好牛逼很自由。不像Dictionary<TKey,Tvalue>必须指定存的数据是什么类型  比如Dictionary<string,string>定义的时候就限制了key必须为string,value也必须为string类型Dictionary<TKey,Tvalue>也正是由于采用泛型,在开始就指定内存,因此没有装箱的过程,这个过程到达是怎么样去浪费性能的,比如我假如使用HashTable去存键值对数据,比如我的key为int,那么我会先把在堆内存中开个int大小内存,然后把这个key存进去。如果在字典泛型中的,我们是直接把key存入已经开好的key变量对应的内存,而不需要重新开内存。正是少了这步。
阅读全文
0 0
原创粉丝点击