博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

C# 遍历Hashtable

Posted on 2011-12-28 10:58  gczhao  阅读(157)  评论(0编辑  收藏  举报

本文转自:http://www.cnblogs.com/cyccess/archive/2011/05/16/2047672.html

 

 

好久没用字典了,今天需要使用,确怎么也想不出,存储后的遍历方法!

在网上查到学习了,这里作个记录,忘记了就有地方查了:)

其实很容易!

这里再提醒一下,

1)HashTable 存储的是无序的,也就是最先存储的键、值对不一定在第一个位置上;

2)HashTable 存储的是弱类型的,也就是要由自己来控制存储类型,并且取值时要进行强制类型转换;

这个要怪微软的方法描述不够清晰,要是清晰了直接就可以从描述中找到方法:

先创建一个HashTable对象:

System.Collections.HashTable ht=new System.Collections.HashTable();

ht.Add("key_A","value_A");

ht.Add("key_B","value_B");

ht.Add("key_C","value_C");

遍历方法一:

System.Collections.IDictionaryEnumerator ht = ht.GetEnumerator();
while (ht.MoveNext())
{
          ht.Key.ToString();//键

    ht.Value.ToString();//值 

          //这里已经取到当前的键、值对了,怎么输出和存储就看自己的了    
}

遍历方法二:

foreach (System.Collections.DictionaryEntry item in ht)
{
           item.Key.ToString();//键

    item.Value.ToString();//值

    //这里已经取到当前的键、值对了,怎么输出和存储就看自己的了 

}