C# 雜湊表
來源:互聯網
上載者:User
在.NET Framework中,Hashtable是System.Collections命名空間提供的一個容器,用於處理和表現類似key/value的索引值對,其中key通常可用來快速尋找,同時key是區分大小寫;value用於儲存對應於key的值。Hashtable中key/value索引值對均為object類型,所以Hashtable可以支援任何類型的key/value索引值對. 因此在用的過程中,需引用:using System.Collections;下面列一下常用的用法,右邊給出相應的注釋.一.常用的方法: Hashtable hshTable = new Hashtable(); // 建立雜湊表 hshTable .Add("Person1", "zhanghf"); // 往雜湊表裡添加索引值對 hshTable .Clear(); //移除雜湊表裡所有的索引值對 hshTable .Contains("Person1"); //判斷雜湊表裡是否包含該鍵 string name = (string)hshTable["Person1"].ToString(); //取雜湊表裡指定鍵的值 hshTable.Remove("Person1"); // 刪除雜湊表裡指定鍵的索引值對 IDictionaryEnumerator en = hshTable.GetEnumerator(); // 遍曆雜湊表所有的鍵,讀出相應的值
while (en.MoveNext())
{
string str = en.Value.ToString();
}
二.遍曆雜湊表:遍曆雜湊表需要用到DictionaryEntry Object,代碼如下:
for(DictionaryEntry de in ht) //ht為一個Hashtable執行個體
{
Console.WriteLine(de.Key);//de.Key對應於key/value索引值對key
Console.WriteLine(de.Value);//de.Key對應於key/value索引值對value }
三.對雜湊表進行排序
對雜湊表進行排序在這裡的定義是對key/value索引值對中的key按一定規則重新排列,但是實際上這個定義是不能實現的,因為我們無法直接在Hashtable進行對key進行重新排列,如果需要Hashtable提供某種規則的輸出,可以採用一種變通的做法:
ArrayList akeys=new ArrayList(ht.Keys); //記得匯入System.Collections
akeys.Sort(); //調用了akeys的按字母順序進行排序Sort,這個很容易單獨實現
for(string skey in akeys)
{
Console.Write(skey + ":");
Console.WriteLine(ht[skey]);//排序後輸出
}