HashTable与Dictionary哪个性能更好?

这个问题要看怎么说,首先如果是单线程的话,我认为是Dictionary更好,因为Dictionary的原型是Dictionary<(Of <(TKey, TValue>)>),它是可以确定类型的,当然

它还支持贬型,而Hashtable它内部的value都是object类型,所以每次都要进行装箱和拆箱的操作。

但如果是多线程的话,那Dictionary就要注意了,因为它不是线程安全的,必须通过lock进行锁定才行,而这点Hashtable就更好一些,它完全是纯种安全的。

使用方法:

HashTable ht=new HashTable();//实现 IDictionary接口

ht.Add(1,"zzl");
ht.Add(2,"zhz");
ht.Add(3,"zql");

Dictionary<int,string> dic=new Dictionary<int,string>();//它被指明了具体的类型

dic.Add(1,"zzl");
dic.Add(2,"zhz");
dic.Add(2,"zql");

posted @ 2012-02-07 15:54  张占岭  阅读(1536)  评论(4编辑  收藏  举报