知识大全 哈希表(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相关参考