- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
HashTable的用法
C#中HashTable的用法
一,哈希表(Hashtable)简述
? 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似keyvalue的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存储对应于key的值。Hashtable中keyvalue键值对均为object类型,所以Hashtable可以支持任何类型的keyvalue键值对.
二,哈希表的简单操作
?在哈希表中添加一个keyvalue键值对:HashtableObject.Add(key,value);?在哈希表中去除某个keyvalue键值对:HashtableObject.Remove(key);?从哈希表中移除所有元素:?????????? HashtableObject.Clear();??判断哈希表是否包含特定键key:????? HashtableObject.Contains(key);?下面控制台程序将包含以上所有操作:using System;using System.Collections; 使用Hashtable时,必须引入这个命名空间class hashtable{? public static void Main()? {? Hashtable ht=new Hashtable(); 创建一个Hashtable实例? ht.Add(E,e);添加keyvalue键值对? ht.Add(A,a);? ht.Add(C,c);? ht.Add(B,b);
? string s=(string)ht[A];? if(ht.Contains(E)) 判断哈希表是否包含特定键,其返回值为true或false??? Console.WriteLine(the E keyexist);? ht.Remove(C);移除一个keyvalue键值对? Console.WriteLine(ht[A]);此处输出a? ht.Clear();移除所有元素? Console.WriteLine(ht[A]); 此处将不会有任何输出? }}
三,遍历哈希表
?遍历哈希表需要用到DictionaryEntry Object,代码如下:?for(DictionaryEntry de in ht) ht为一个Hashtable实例?{?? Console.WriteLine(de.Key);de.Key对应于keyvalue键值对key?? Console.WriteLine(de.Value);de.Key对应于keyvalue键值对value?}
四,对哈希表进行排序
? 对哈希表进行排序在这里的定义是对keyvalue键值对中的key按一定规则重新排列,但是实际上这个定义是不能实现的,因为我们无法直接在Hashtable进行对key进行重新排列,如果需要Hashtable提供某种规则的输出,可以采用一种变通的做法:?ArrayList akeys=new ArrayList(ht.Keys); file别忘了导入System.Collections?akeys.Sort(); file按字母顺序进行排序?for(string skey in akeys)?{?? Console.Write(skey + );?? Console.WriteLine(ht[skey]);排序后输出?}
百科名片类实现一个哈希表,该哈希表将键映射到相应的值。任何非 null 对象都可以用作键或值。为了成功地在哈希表中存储和获取对象,用作键的对象必须实现 hashCode 方法和 equals 方法。
目录
简述
简单操作
遍历哈希表
对哈希表进行排序
编辑本段
简述
Hashtable 的实例有两个参数影响其性能:初始容量 和加载因子。容量 是哈希表中桶 的数量,初始容量 就是哈希表创建时的容量。注意,哈希表的状态为 open:在发生“哈希冲突”的情况下,单个桶会存储多个条目,这些条目必须按顺序搜索。加载因子 是对哈希表在其容量自动增加之前可以达到多满的一个尺度。初始容量和加载因子这两个参数只是对该实现的提示。关于何时以及是否调用 rehash 方法的具体细节则依赖于该实现。
通常,默认加载因子(.75)在时间和空间成本上寻求一种折衷。加载因子过高虽然减少了空间开销,但同时也增加了查找某个条目的时间(在大多数 Hashtable 操作中,包括 get 和 put 操作,都反映了这一点)。
初始容量主要控制空间消耗与执行 rehash 操作所需要的时间损耗之间的平衡。如果初始容量大于 Hasht
您可能关注的文档
最近下载
- 102609 AVEVA Plant (PDMS12.0)多专业支吊架定制开发培训-管理员培训.pdf VIP
- 2021年中国机器视觉市场研究报告 .pdf VIP
- 锂离子电池材料与技术课程思政教学设计教案.pdf
- 学前儿童卫生与保健第二章.ppt VIP
- T_ZZB 2185—2021_预制混凝土楼梯.pdf VIP
- 汽车连接器,插接件德尔福,安普,型号,国产型号对照表,文档.doc VIP
- 检验科如何开展科研活动.ppt VIP
- 2025年山东黄金集团有限公司人员招聘笔试备考试题及答案解析.docx VIP
- 2022 ISG-3000网络安全监测装置用户手册.docx VIP
- 《学前儿童卫生与保健》第二章.ppt VIP
文档评论(0)