C#中的Hashtable?類使用詳解
一:Hashtable 類簡單說明
1)表示根據(jù)鍵的哈希代碼進行組織的鍵/值對的集合。使用哈希代碼生成的哈希值,是唯一地標識數(shù)據(jù)的固定長度的數(shù)字值。
2)HashTable是System.Collections命名空間提供的一個容器,用于處理和表現(xiàn)類似keyvalue的鍵值對,其中key通常用來快速查找,key區(qū)分大小寫;value用于存儲對應key值。Hashtable中keyvalue鍵值對均為object類型,所以Hashtable可以支持任何類型的keyvalue鍵值對.
二:Hashtable 類的構造函數(shù)
三:Hashtable 類的屬性
構造函數(shù) | 構造函數(shù)說明 |
---|---|
Count | 獲取包含在 Hashtable 中的鍵/值對的數(shù)目。 |
EqualityComparer | 獲取要用于 IEqualityComparer 的 Hashtable。 |
IsFixedSize | 獲取一個值,該值指示 Hashtable 是否具有固定大小。 |
Item[Object] | 獲取或設置與指定的鍵關聯(lián)的值。 |
Keys | 獲取包含 ICollection 中的鍵的 Hashtable。 |
Values | 獲取一個 ICollection,它包含 Hashtable 中的值。 |
四:Hashtable 類的常用方法
1: Hashtable.Add(Object, Object) 的方法介紹
- 1)作用:將帶有指定鍵和值的元素添加到 Hashtable 中。
- 2)語法:
public virtual void Add (object key, object value);
3)使用舉例:
// 創(chuàng)建并初始化新的哈希表. var myHT = new Hashtable(); myHT.Add("one", "The"); myHT.Add("two", "quick"); myHT.Add("three", "brown"); myHT.Add("four", "fox"); // 顯示哈希表. Console.WriteLine("哈希表包含以下內(nèi)容:"); Console.WriteLine("\t-KEY-\t-VALUE-"); foreach (DictionaryEntry de in myHT) { Console.WriteLine($"\t{de.Key}:\t{de.Value}"); }
4)運行結果:
哈希表包含以下內(nèi)容:
-KEY- -VALUE-
three: brown
one: The
two: quick
four: fox
2: Hashtable.Clone ()的方法介紹
- 1)作用:創(chuàng)建 Hashtable 的淺表副本
- 2)語法:
public virtual object Clone ();
3)使用舉例:
// 創(chuàng)建并初始化新的哈希表. var myHT = new Hashtable(); myHT.Add(1, "Freedom"); myHT.Add(2, "Justice"); myHT.Add(3, "destiny"); myHT.Add(4, "GUNDAM"); // 克隆新的哈希表. var myHT2 = (Hashtable)myHT.Clone(); // 顯示克隆的哈希表. Console.WriteLine("哈希表包含以下內(nèi)容:"); Console.WriteLine("\t-KEY-\t-VALUE-"); foreach (DictionaryEntry de in myHT2) { Console.WriteLine($"\t{de.Key}:\t{de.Value}"); }
4)運行結果:
哈希表包含以下內(nèi)容:
-KEY- -VALUE-
4: GUNDAM
3: destiny
2: Justice
4: Freedom
3: Hashtable.ContainsKey(Object)和ContainsValue(Object)的方法介紹
- 1)作用:確定 Hashtable 是否包含特定鍵或者特定值。
- 2)語法:
public virtual bool ContainsKey (object key); public virtual bool ContainsValue (object value);
3)使用舉例:
// 創(chuàng)建并初始化新的哈希表. var myHT = new Hashtable(); myHT.Add(1, "Freedom"); myHT.Add(2, "Justice"); myHT.Add(3, "destiny"); myHT.Add(4, "GUNDAM"); Console.WriteLine("The key \"{0}\" is {1}.", 3, myHT.ContainsKey(3) ? "在哈希表中" : "不在在哈希表中"); Console.WriteLine("The key \"{0}\" is {1}.", 6, myHT.ContainsKey(6) ? "在哈希表中" : "不在在哈希表中"); Console.WriteLine("The value \"{0}\" is {1}.", "Freedom", myHT.ContainsValue("Freedom") ? "在哈希表中" : "不在在哈希表中"); Console.WriteLine("The value \"{0}\" is {1}.", "GUNDAM", myHT.ContainsValue("GUNDAM") ? "在哈希表中" : "不在在哈希表中");
4)運行結果:
The key "3" is 在哈希表中.
The key "6" is 不在在哈希表中.-
The value "Freedom" is 在哈希表中.
The value "GUNDAM" is 在哈希表中.
4:Hashtable.Remove(Object)的方法介紹
- 1)作用:確定 Hashtable 是否包含特定鍵或者特定值。
- 2)語法:
public virtual void Remove (object key);
3)使用舉例:
// 創(chuàng)建并初始化新的哈希表. var myHT = new Hashtable(); myHT.Add(1, "Freedom"); myHT.Add(2, "Justice"); myHT.Add(3, "destiny"); myHT.Add(4, "GUNDAM"); myHT.Remove(4);//移除指定鍵的元素 foreach (DictionaryEntry de in myHT) { Console.WriteLine($"\t{de.Key}:\t{de.Value}"); }
4)運行結果:
3: destiny
2: Justice
1: Freedom
到此這篇關于C#中的Hashtable 類使用詳解的文章就介紹到這了,更多相關C# Hashtable 類 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
C#?CefSharp?根據(jù)輸入日期段自動選擇日期的操作代碼
這篇文章主要介紹了C#?CefSharp?根據(jù)輸入日期段自動選擇日期的操作代碼,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2024-01-01C#并行編程之數(shù)據(jù)并行Tasks.Parallel類
這篇文章介紹了C#并行編程之數(shù)據(jù)并行Tasks.Parallel類,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-05-05C#讀取XML的CDATA節(jié)點內(nèi)容實例詳解
在本篇文章里小編給大家整理了關于C# 讀取XML的CDATA節(jié)點內(nèi)容的相關知識點內(nèi)容,有需要的朋友們參考學習下。2019-09-09C#結合JavaScript對Web控件進行數(shù)據(jù)輸入驗證的實現(xiàn)方法
在 Web 應用的錄入界面,數(shù)據(jù)驗證是一項重要的實現(xiàn)功能,數(shù)據(jù)驗證是指確認 Web 控件輸入或選擇的數(shù)據(jù),本文我們將介紹如何通過C# 后端及JavaScript 前端對 Web 控件進行數(shù)據(jù)輸入有效性的驗證,感興趣的朋友可以參考一下2024-05-05