C# - Hashtable 類



Hashtable 類表示一個鍵值對的集合,這些鍵值對是基於鍵的雜湊碼進行組織的。它使用鍵來訪問集合中的元素。

當您需要使用**鍵**訪問元素,並且您可以識別一個有用的鍵值時,可以使用雜湊表。雜湊表中的每個專案都具有鍵/值對。鍵用於訪問集合中的專案。

Hashtable 類的屬性和方法

下表列出了一些常用的**Hashtable**類的**屬性**:

序號 屬性和描述
1

Count

獲取Hashtable中包含的鍵值對的數量。

2

IsFixedSize

獲取一個值,該值指示Hashtable的大小是否固定。

3

IsReadOnly

獲取一個值,該值指示Hashtable是否為只讀。

4

Item

獲取或設定與指定鍵關聯的值。

5

Keys

獲取一個包含Hashtable中鍵的ICollection。

6

Values

獲取一個包含Hashtable中值的ICollection。

下表列出了一些常用的**Hashtable**類的**方法**:

序號 方法和描述
1

public virtual void Add(object key, object value);

將具有指定鍵和值的元素新增到Hashtable中。

2

public virtual void Clear();

移除Hashtable中的所有元素。

3

public virtual bool ContainsKey(object key);

確定Hashtable是否包含特定的鍵。

4

public virtual bool ContainsValue(object value);

確定Hashtable是否包含特定的值。

5

public virtual void Remove(object key);

從Hashtable中移除具有指定鍵的元素。

示例

下面的示例演示了這個概念:

using System;
using System.Collections;

namespace CollectionsApplication {
   class Program {
      static void Main(string[] args) {
         Hashtable ht = new Hashtable();
         
         ht.Add("001", "Zara Ali");
         ht.Add("002", "Abida Rehman");
         ht.Add("003", "Joe Holzner");
         ht.Add("004", "Mausam Benazir Nur");
         ht.Add("005", "M. Amlan");
         ht.Add("006", "M. Arif");
         ht.Add("007", "Ritesh Saikia");
         
         if (ht.ContainsValue("Nuha Ali")) {
            Console.WriteLine("This student name is already in the list");
         } else {
            ht.Add("008", "Nuha Ali");
         }
         
         // Get a collection of the keys.
         ICollection key = ht.Keys;
         
         foreach (string k in key) {
            Console.WriteLine(k + ": " + ht[k]);
         }
         Console.ReadKey();
      }
   }
}

當以上程式碼編譯並執行時,它會產生以下結果:

001: Zara Ali
002: Abida Rehman
003: Joe Holzner
004: Mausam Benazir Nur
005: M. Amlan
006: M. Arif
007: Ritesh Saikia
008: Nuha Ali 
csharp_collections.htm
廣告
© . All rights reserved.