VB.Net Hashtable類

2019-10-16 23:01:25

Hashtable類表示基於鍵的雜湊碼組織的鍵-值對的集合。它使用鍵來存取集合中的元素。

當需要通過使用鍵存取元素時,使用雜湊表來識別的鍵值。雜湊表中的每個專案都有一個鍵/值對。 鍵用於存取集合中的專案。

Hashtable類的屬性和方法

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

編號 屬性 描述
1 Capacity 獲取或設定Hashtable可以包含的元素的數量。
3 IsFixedSize 獲取一個值,該值指示Hashtable是否具有固定的大小。
4 IsReadOnly 獲取一個值,該值指示Hashtable是否是唯讀的。
5 Item 獲取或設定指定鍵關聯的元素。
6 Keys 獲取包含Hashtable中的鍵的ICollection
7 Values 獲取包含Hashtable中的值的ICollection

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

編號 方法 描述
1 Public Overridable Sub Add (key As Object, value As Object ) 將具有指定鍵和值的元素新增到Hashtable中。
2 Public Overridable Sub Clear 刪除Hashtable中的所有元素。
3 Public Overridable Function ContainsKey (key As Object) As Boolean 確定Hashtable是否包含特定的鍵。
4 Public Overridable Function ContainsValue (value As Object) As Boolean 確定Hashtable是否包含特定的值。
5 Public Overridable Sub Remove (key As Object) Hashtable中刪除具有指定鍵的元素。

範例:

以下範例演示了這個概念:

Imports System.Collections

Module modhashtable
   Sub Main()
      Dim ht As Hashtable = New Hashtable()
      Dim k As String
      ht.Add("001", "Haikou Lee")
      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 Wong")
      If (ht.ContainsValue("Nuha Ali")) Then
          Console.WriteLine("This student name is already in the list")
      Else
          ht.Add("008", "Nuha Lee")
      End If
      ' Get a collection of the keys. '
      Dim key As ICollection = ht.Keys
      For Each k In key
          Console.WriteLine(" {0} : {1}", k, ht(k))
      Next k
      Console.ReadKey()
   End Sub
End Module

執行上面範例程式碼,得到以下結果 -

F:\worksp\vb.net\collection>vbc modhashtable.vb
F:\worksp\vb.net\collection>modhashtable.exe
 007 : Ritesh Wong
 004 : Mausam Benazir Nur
 005 : M. Amlan
 008 : Nuha Lee
 002 : Abida Rehman
 003 : Joe Holzner
 001 : Haikou Lee
 006 : M. Arif