C# 鍵值對類相關


C# 鍵值對類相關

一 C# 鍵值對類有以下類:
①    IDictionary<string, Object> idc = new Dictionary<string, object>();
②    KeyValuePair<string, object> par = (KeyValuePair<string, object>)shoplistcomboBox.SelectedItem;
③    Hashtable ht=new Hashtable(); file創建一個Hashtable實例
  
       ht.Add(E,e);添加keyvalue鍵值對
 Hashtable 內的每一組對象就是一個DictionaryEntry 
 例如我們要循環hashtable 
 foreach (DictionaryEntry de in myHashtable) {...} 
 Hashtable就是一個DictionaryEntry的集合
 
二 KeyValuePair和Hashtable區別
KeyValuePair是單個的鍵值對對象,而Hashtable是一個集合。
KeyValuePair用於接收combox選定的值。
例如:KeyValuePair<string, object> par = (KeyValuePair<string, object>)shoplistcomboBox.SelectedItem;
 
 三 hashtable 與 dictionary的區別
1:單線程程序中推薦使用 Dictionary, 有泛型優勢, 且讀取速度較快, 容量利用更充分.
2:多線程程序中推薦使用 Hashtable, 默認的 Hashtable 允許單線程寫入, 多線程讀取, 對 Hashtable 進一步調用 Synchronized() 方法可以獲得完全線程安全的類型. 而 Dictionary 非線程安全, 必須人為使用 lock 語句進行保護, 效率大減.
3:Dictionary 有按插入順序排列數據的特性 (注: 但當調用 Remove() 刪除過節點后順序被打亂), 因此在需要體現順序的情境中使用 Dictionary 能獲得一定方便.

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM