轻松学习C#的哈希表

2019-12-30 11:09:15丽君

轻松学习C#的哈希表,对C#的哈希表感兴趣的朋友可以参考本篇文章,帮助大家更灵活的运用C#的哈希表。

在C#语言中,还有一种用于快速搜索而组织的键/值组合的数组,这种数组叫做关联数组,也叫做哈希表(Hashtable)。

哈希表也在System.Collection命名空间下,用于处理和表现类似key/value的键值对,其中key通常用来快速查找,同时key是区分大小写,且key必须是唯一的。它没有有效的排序,所进行的是内在的排序,value用于存储对应于key的值。哈希表中key/value键值对均为object类型,所以哈希表可以支持任何类型的key/value键值对。哈希表的每个元素是一个存储在DictionaryEntry对象中的键值对键值对(所谓的DictionaryEntry结构,就是定义可设置或检索的字典键值对,有一个key属性,一个value属性,分别代表键和值)。

哈希表最大的优点就是把数据的存储和查找消耗的时间大大降低,几乎可以看成常数时间,而代价仅仅是消耗较多的内存。然而在当前可利用内存越来越多的情况下,用空间换时间的做法是值得的。另外,编码比较容易也是它的特点之一。

一、Hashtable元素的添加

Hashtable提供了一个添加元素的key/value键值对Add方法,该方法有两个参数,一个是键,功能相当于数组中的索引,帮助查找,另一个是值,可以把它看做数组中的元素,其格式为:Hashtable对象.Add(键,值)

例一、利用上述的方法进行Hashtable对象的元素的添加

 

 
  1. <span style="font-size:18px;">using System;   using System.Collections;//需要添加的命名空间  
  2. using System.Collections.Generic;   using System.Linq;  
  3. using System.Text;   using System.Threading.Tasks;  
  4.   namespace 哈希表  
  5. {   class Program  
  6. {   static void Main(string[] args)  
  7. {   Hashtable al = new Hashtable();  
  8. Console.WriteLine("添加前al的元素个数为:"+al.Count);   al.Add("1", "a");  
  9. al.Add("2", "b");   al.Add("3", "c");  
  10. Console.WriteLine("添加后al的元素个数为:"+al.Count);   Console.ReadLine();  
  11. }   }  
  12. }</span>