知识大全 哈希表(HashTable)

Posted 元素

篇首语:吃过的馍馍不香,嚼过的甘蔗不甜。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 哈希表(HashTable)相关的知识,希望对你有一定的参考价值。

哈希表(HashTable)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  HashTable 通常称为哈希表 它表示键(key)/值(value)对的集合

   HashTable 的构造函数

  HashTable()              //初始化为 个元素的空实例

  HashTable(Int )      //初始化为int 个元素的新实例

  例子

  HashTable myHashTable = new HashTable();

  HashTable myHashTable = new HashTable( );

   HashTable 元素的特点

  HashTable 获取元素的方法是使用 键 访问键所对应的值 即HashTable[key] 下面是例子

  using System;

  using System Collections Generic;

  using System Text;

  using System Collections;

  namespace Example _

  

  class Program

  

  static void Main(string[] args)

  

  Hashtable myHashTable = new Hashtable();

  //插入相应的键和值组成的元素

  myHashTable Add( H );

  myHashTable Add( e );

  myHashTable Add( l );

  myHashTable Add( l );

  myHashTable Add( o );

  myHashTable Add( int );

  myHashTable Add( double );

  myHashTable Add( bool true);

  //修改相应的键和值组成的元素

  myHashTable[ int ] = ;

  myHashTable[ double ] = ;

  myHashTable[ bool ] = false;

  //输出相应的键和值组成的元素

  Console WriteLine(myHashTable[ ]);

  Console WriteLine(myHashTable[ ]);

  Console WriteLine(myHashTable[ ]);

  Console WriteLine(myHashTable[ ]);

  Console WriteLine(myHashTable[ ]);

  Console WriteLine(myHashTable[ int ]);

  Console WriteLine(myHashTable[ double ]);

  Console WriteLine(myHashTable[ bool ]);

  Console ReadLine();

  

  

  

  程序运行结果如下

  H

  e

  l

  l

  o

  

  

  False

   Hashtable 元素的操作

  ● 添加操作的定义如下

  public virtual void Add(object key lbject value)

  注意 键 不能为空 值可以为空

  ● 删除操作

  HashTable Clear()         //删除所有元素 不带任何参数 清空后HashTable的元素个数为

  示例 myHashTable Clear()

  HashTable Remove()    //删除指定 键 所在的元素

  其定义如下

  public virtual void Remove(Object key)

  示例 myHashTable Remove( int );

  如果HashTable 为只读时进行上述操作会出现异常

   Hashtable 的遍历

  由于Hashtable 的键值对属于DictionaryEntry类型 所以在用foreach 遍历Hashtable 时 类型参数是 DictionaryEntry 看下面示例

  foreach (DictionatyEntry myDE in myHashTable)

  

  Console WriteLine( \\t \\t myDE Key myDE Value);    //注意读取键值的方法

  

   Hashtable 的查询

  Hashtable 查询有以下方法

  ● Hashtable Contains            //判断HashTable中是否包含指定 键

  ● Hashtable ContainsKey      //判断HashTable中是否包含指定 键 同上

  ● Hashtable ContainsValue   //判断HashTable中是否包含指定值 很好!

  示例

  Console WriteLine( myHashTable 包含键 myHashTable Contains( ));

  Console WriteLine( myHashTable 包含键 myHashTable ContainsKey( ));

  Console WriteLine( myHashTable 包含值true myHashTable ContainsValue(true));

  Console WriteLine( myHashTable 包含值 myHashTable ContainsValue( ));

   HashTable 表的优点

  HashTable是System Collections命名空间提供的一个容器 HashTable中的key/value均为object类型 所以HashTable可以支持任何类型的key/value键/值对

cha138/Article/program/net/201311/12349

相关参考