VB.Net - 哈希表



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 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 中移除具有指定键的元素。

示例

以下示例演示了该概念:

Module collections
   Sub Main()
      Dim ht As Hashtable = New Hashtable()
      Dim k As String
      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")) Then
         Console.WriteLine("This student name is already in the list")
      Else
          ht.Add("008", "Nuha Ali")
      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

编译并执行上述代码后,将产生以下结果:

006: M. Arif
007: Ritesh Saikia
008: Nuha Ali
003: Joe Holzner
002: Abida Rehman
004: Mausam Banazir Nur
001: Zara Ali
005: M. Amlan 
vb.net_collections.htm
广告