Hashtable:仅有两列的表
Hashtable集合和ArrayList、Stack和Queue都不一樣,該集合可用看作是一個僅有兩列的表格,第一列是鍵,存放的是唯一不可重復的值。第二列是值,隨便放什么都可以。由于Hashtable這樣的特征,所以這個集合不適合放置順序的值,卻可以放置些能被唯一標識的值。比如以下代碼說明了這個現象:
System.Collections.Hashtable phoneBook = new System.Collections.Hashtable();
phoneBook.Add("Leo", "139");
phoneBook.Add("Shy", "138");
phoneBook.Add("Hai", "137");
phoneBook.Add("Lii", "188");
怎么取值呢?令你驚訝的是,Hashtable不直接支持通過下標取值,如果我們要訪問元素,必須要知道key的值。
第一種方案直接依賴key值獲取元素的值:
System.Console.WriteLine(phoneBook["Leo"]);
System.Console.WriteLine(phoneBook["Shy"]);
System.Console.WriteLine(phoneBook["Hai"]);
System.Console.WriteLine(phoneBook["Lii"]);
如果你需要遍歷Hashtable中的所以元素,你需要采用如下的方案:
foreach (System.Collections.DictionaryEntry entry in phoneBook)
{
System.Console.WriteLine("phoneBook[{0}]:{1}", entry.Key, phoneBook[entry.Key]);
}
得到的結果如圖3.1.29:
圖3.1.29
通過遍歷DictionaryEntry我們可以得到Hashtable的所有鍵,值得注意的是,遍歷集合的次序和值進入集合的次序沒有必然的關系。
轉載于:https://www.cnblogs.com/shyleoking/archive/2009/07/30/1535467.html
總結
以上是生活随笔為你收集整理的Hashtable:仅有两列的表的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: .NET软件开发, 你应该知道 (整)
- 下一篇: 浅谈企业软件架构(5)