概要:
在 System.Collections.Generic 中 Hashtable 和 Dictionary 的区别:
As some of you with the Whidbey preview bits have no doubt noticed, we introduced set of generic collection classes in System.Collections.Generic. Far from just making generic versions of the current collections, we took the time to revisit how we really expect people to use these types and, in some cases, learned from our mistakes in V1 of the framework.
One of the new collections is Dictionary<K, V>. The big change that we made from Hashtable has caused a fair amount of internal debate so I thought it would be interesting to see what actual, real-live, customers think of the issue. In brief, with Hashtable's indexer, if the key is not found null is returned, with Dictionary<K,V>'s indexer an exception is thrown.
For example:
Hashtable hashtable = new Hashtable();
hashtable.Add("key1", "data1");
hashtable.Add("key2", "data2");
Console.WriteLine(hashtable["key1"]); //displays "data1"
Console.WriteLine(hashtable["key42"]==null); //displays "true"
Dictionary<string, string> dic = new Dictionary<string, string>();
dic.Add("key1", "data1");
dic.Add("key2", "data2");
Console.WriteLine(dic["key1"]); //displays "data1"
Console.WriteLine(dic["key42"]); //throws a KeyNotFoundException
...
Published 26 April 04 11:46
Previous: Terapia d'Urgenza 剧评和八卦 Next: Amy Winehouse Rehab 歌词
Parent: 2008年12月
© 2008-2010 HubaPo.com 版权所有 Contact me