C#中Hash table的一些操作方法講解
散列表(Hash table,也叫哈希表),是根據關鍵碼值(Key value)而直接進行訪問的數(shù)據結構。也就是說,它通過把關鍵碼值映射到表中一個位置來訪問記錄,以加快查找的速度。這個映射函數(shù)叫做散列函數(shù),存放記錄的數(shù)組叫做散列表。
今天難得有了半天時間,鳴炮!任務都做完了,我終于有點時間去分析公司這個項目的代碼,看到了其中有好多的對Hash table的應用。有好多的BLL層的代碼的方法傳入的是hashtable.其實我所做的模塊中,如果有超過三個變量以上的參數(shù)傳入我會將這些封裝成一個個對象,可能是大學一直是用c語言,太多了參數(shù)的話就將其弄成結構體,到了C#我就封成對象,既然做的面向對象,為什么傳參數(shù)還這樣一個個用hashtable 一個個的add進來?我表示我初入C#,我沒有去深究為什么公司大部分的都是用傳入hash table的方式做參數(shù)。廢話不多說了。記錄一下對hash table的操作:
1、hash table要引入命名空間:system.colloctions;
Hashtable lobjHashtable = new Hashtable(); //實例化
lobjHashtable.Add(Key,value); //增加一個鍵值對,這里面這個key要是唯一的!
lobjHashtable.Remove(Key);//移除一個key
lobjHashtable.Clear();//清除所有的鍵值對
lobjHashtable.Contains(Key);// 是否包含某一個特定的Kye
//eg
lobjHashtable.Add("key1","value1");
lobjHashtable.Add("key2","value2");
lobjHashtable.Add("key3","value3");
//取出某一個鍵的值
string lstrTemp = (string)lobjHashtable["key1"];
c# 表的遍歷方法:一下提供兩種遍歷hash table的方法
foreach(DictionaryEntry objDE in lobjHashtable)
{
string lstrKey = objDE.Key.ToString();//鍵
string lstrValue = objDE.Value.ToString();//值
}
System.Collections.IDictionaryEnumerator emutor = lobjHashtable.GetEnumerator();
while(emutor.MoveNext())
{
string lstrKey = emutor.Key.ToString();
string lstrValue emutor.Value.ToString();
}
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接
相關文章
Unity的AssetPostprocessor之Model函數(shù)使用實戰(zhàn)
這篇文章主要為大家介紹了Unity的AssetPostprocessor之Model函數(shù)使用實戰(zhàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-08-08

