詳解C#中HashTable的用法。本站提示廣大學習愛好者:(詳解C#中HashTable的用法)文章只能為提供參考,不一定能成為您想要的結果。以下是詳解C#中HashTable的用法正文
一,哈希表(Hashtable)簡述
在.NET Framework中,Hashtable是System.Collections定名空間供給的一個容器,用於處置和表示相似keyvalue的鍵值對,個中key平日可用來疾速查找,同時key是辨別年夜小寫;value用於存儲對應於key的值。Hashtable中keyvalue鍵值對均為object類型,所以Hashtable可以支撐任何類型的keyvalue鍵值對.
二,哈希表的簡略操作
在哈希表中添加一個keyvalue鍵值對:HashtableObject.Add(key,value);
在哈希表中去除某個keyvalue鍵值對:HashtableObject.Remove(key);
從哈希表中移除一切元素: HashtableObject.Clear();
斷定哈希表能否包括特定鍵key: HashtableObject.Contains(key);
上面掌握台法式將包括以上一切操作:
using System; using System.Collections; //應用Hashtable時,必需引入這個定名空間 class hashtable { public static void Main() { Hashtable ht=new Hashtable(); //創立一個Hashtable實例 ht.Add("E","e");//添加keyvalue鍵值對 ht.Add("A","a"); ht.Add("C","c"); ht.Add("B","b"); string s=(string)ht["A"]; if(ht.Contains("E")) //斷定哈希表能否包括特定鍵,其前往值為true或false Console.WriteLine("the E key exist"); ht.Remove("C");//移除一個keyvalue鍵值對 Console.WriteLine(ht["A"]);//此處輸入a ht.Clear();//移除一切元素 Console.WriteLine(ht["A"]); //此處將不會有任何輸入 } }
三,遍歷哈希表
遍歷哈希表須要用到DictionaryEntry Object,代碼以下:
for(KeyValuePair de in ht) //ht為一個Hashtable實例 { Console.WriteLine(de.Key);//de.Key對應於keyvalue鍵值對key Console.WriteLine(de.Value);//de.Key對應於keyvalue鍵值對value }
四,對哈希表停止排序
對哈希表停止排序在這裡的界說是對keyvalue鍵值對中的key按必定規矩從新分列,然則現實上這個界說是不克不及完成的,由於我們沒法直接在Hashtable停止對key停止從新分列,假如須要Hashtable供給某種規矩的輸入,可以采取一種變通的做法:
ArrayList akeys=new ArrayList(ht.Keys); //別忘了導入System.Collections akeys.Sort(); //按字母次序停止排序 for(string skey in akeys) { Console.Write(skey + ":"); Console.WriteLine(ht[skey]);排序後輸入 }
以上所述是小編給年夜家引見的C#中HashTable的用法,願望對年夜家有所贊助!