【www.gdgbn.com--php安全】

hashtable  利用 foreach 与 while for遍历方法
在.net framework中,hashtable是system.collections命名空间提供的一个容器,用于处理和表现类似keyvalue的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存储对应于key的值。hashtable中keyvalue键值对均为object类型,所以hashtable可以支持任何类型的keyvalue键值对.


遍历哈希表

 遍历哈希表需要用到dictionaryentry object,代码如下:
 for(dictionaryentry de in ht) fileht为一个hashtable实例
 {
   console.writeline(de.key);de.key对应于keyvalue键值对key
   console.writeline(de.value);de.key对应于keyvalue键值对value
 }


 idictionaryenumerator id = ht.getenumerator();
             while (id.movenext())
             {
             person p =   (person)ht[id.key];
              if (p.name == strname)
              {
                  console.writeline("查询后的结果是:" + p.name + "t" + p.email + "t" + p.age);
              }
             }

 

              foreach (string item in ht.keys)
             {
                 person p = (person)ht[item];
                 if (strname == p.name)
                 {
                     console.writeline("查询后的结果是:" + p.name + "t" + p.email + "t" + p.age);
                 }
             }
 
 
 

              foreach (dictionaryentry item in ht)
             {
                 if (strname == ((person)item.value).name)
                 {
                     console.writeline("查询后的结果是:" + ((person)item.value).name + "t" + ((person)item.value).email + "t" + ((person)item.value).age);
                 }
            }
 
     
     
              foreach (person item in ht.values)
            {
                 if (item.name == strname)
                 {
                    console.writeline("查询后的结果是:" + item.name + "t" + item.email + "t" + item.age);
                 }
 
            }     

hashtable 在集合中称为键值对,它的每一个元素的类型是 dictionaryentry,由于hashtable对象的键和值都是object类型,决定了它可以放任何类型的数据,

 

本文来源:http://www.gdgbn.com/jiaocheng/28998/