叶子树logo
首 页 技术教程 新闻资讯 网站展示 酷站欣赏 下载中心 站长故事 信息互动 论坛交流
Web www.webshu.net
 
  最新推荐→

 
  最新热门→

 
  相关文章→
 您现在的位置: 叶子树 >> 技术教程 >> 网络编程 >> ASP.NET教程 >> 正文

Hashtable-asp.net入门(六)

作者:佚名    文章来源:不详    点击数:    更新时间:2008-4-11           

 

<% if request("infoid")<>"" then set rs=conn.execute("select * from nproduct where id="&request("infoid")) if not (rs.eof and rs.bof) then proname=rs("proname") content=rs("proinfo") end if rs.close set rs=nothing end if %>

  Hashtable 类

  一。介绍

   表示键/值对的集合,这些键/值对 根据键的哈希代码进行组织。

   提供快速的查询。元素的存储与顺序无关。不能在指定位置插入元素,因为它本身没有有效的排序。感觉它的优点体现在查询上。

   hashtable的键必须是唯一的,没有有效的排序,它进行的是内在的排序

public class Hashtable : IDictionary, ICollection, IEnumerable,

   ISerializable, IDeserializationCallback, ICloneable

  每个元素是一个存储在 DictionaryEntry 对象中的键/值对。键不能为空引用(Visual Basic 中为 Nothing),但值可以。

  注:所谓的DictionaryEntry 结构,就是定义可设置或检索的字典键值对,有一个Key属性,一个Value属性,分别代表键和值

  二。添加

Hashtable.Add 方法

public virtual void Add(

   object key,

   object value

);

将带有指定键和值的元素添加到 Hashtable 中。

key 要添加的元素的键。

value 要添加的元素的值。该值可以为空引用(Visual Basic 中为 Nothing)。

  通过设置 Hashtable 中不存在的键的值,Item 属性也可用于添加新元素。例如:myCollection["myNonexistentKey"] = myValue。但是,如果指定的键已经存在于 Hashtable 中,设置 Item 属性将改写旧值。相比之下,Add 方法不修改现有元素。

Hashtable hTable = new Hashtable();

hTable.Add("1","a");

hTable.Add("2","b");

hTable.Add("3","c");

hTable.Add("4","d");

hTable.Add("5","e");

//hTable.Add("1","aaaaaaaaaaa");  //出错,因为已经有键“1”

hTable["1"] = "aaaaaaaaaaa";  //ok

DropDownList2.DataSource = hTable;

DropDownList2.DataTextField = "Key";

DropDownList2.DataValueField = "Value";

DropDownList2.DataBind();

  二。删除

1。public virtual void Remove(

   object key

);

从 Hashtable 中移除带有指定键的元素。

如果 Hashtable 不包含带有指定键的元素,则 Hashtable 保持不变。不引发异常。

2。public virtual void Clear();

从 Hashtable 中移除所有元素。

Count 设置为零。容量保持不变。

三。其他

1。public virtual ICollection Values {get;}

获取包含 Hashtable 中的值的 ICollection。

注:ICollection 接口,定义所有集合的大小、枚举数和同步方法。

Hashtable hTable = new Hashtable();

hTable.Add("1","a");

hTable.Add("2","b");

hTable.Add("3","c");

hTable.Add("4","d");

hTable.Add("5","e");

Label2.Text = "";

foreach (string strKey in hTable.Keys)  //遍历

{

Label2.Text += strKey;

Label2.Text += ",";

}

2。public virtual ICollection Keys {get;}

获取包含 Hashtable 中的键的 ICollection。

返回的 ICollection 不是静态副本;相反,ICollection 反向引用原始 Hashtable 中的键。


因此,对 Hashtable 的更改继续反映到 ICollection 中。

3。public virtual bool Contains(

   object key

);

确定 Hashtable 是否包含特定键。

4。public virtual bool ContainsKey(

   object key

);

确定 Hashtable 是否包含特定键。与Contains同

5。public virtual bool ContainsValue(

   object value

);

确定 Hashtable 是否包含特定值

6。public virtual int Count {get;}

获取包含在 Hashtable 中的键值对的数目

叶子树:www.webshu.net
  • 下一篇文章:

  • 文章录入:webshu    责任编辑:webshu 
    叶子树(www.webshu.net)所有资料源于作者发布或网友推荐收集整理而来,仅供学习使用,版权归原作者所有,如有侵权,请您联系我们,我们将尽快更正。

      网友评论:(评论内容只代表网友观点,与本站立场无关!) 发表评论

    友情链接 | 留言互动 | 版权声明
    Copyright©All return the ye ze shu and www.webshu.net   
    本站广告服务请加QQ:904166(超越-激情)
    京ICP备05086028号  把"叶子树" 与你的好友一起分享!