C#中hashtable 的使用方法
C#中hashtable 的使用方法
C#中hashtable 的使用方法哈希表Hashtable是一个重要的集合类型,下面对他的基本用法做个小小的总结。
一、名词介绍
散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。
二、HashTable 表的优点
HashTable是System.Collections命名空间提供的一个容器,HashTable中的key/value均为object类型,所以HashTable可以支持任何类型的key/value键/值对。
HashTable的优点就在于其索引的方式,速度非常快。
Hashtable常用的两种构造函数:public Hashtable() public Hashtable(int capacity)
三、向Hashtable添加元素
向Hashtable添加元素时,可以采用系统提供的Add方法。其语法格式如:public virtual void Add(Object key,Object value)
下面举个详细点的例子如:
Hashtable hashtable = new Hashtable(); //实例化Hashtable对象
hashtable.Add("id", "600719"); //向Hashtable哈希表中添加元素
hashtable.Add("name", "denylau");
hashtable.Add("sex", "男");
Console.WriteLine(hashtable.Count); //获得Hashtable哈希表中的元素个数
四、删除Hashtable中的元素
1、Clear方法:该方法用来移除Hashtable中的所有元素,其语法格式如:public virtual void Clear()
Hashtable hashtable = new Hashtable(); //实例化Hashtable对象
hashtable.Add("id", "600719"); //向Hashtable哈希表中添加元素
hashtable.Add("name", "denylau");
hashtable.Add("sex", "男");
hashtable.Clear(); //移除Hashtable哈希表中的元素
Console.WriteLine(hashtable.Count);
2、Remove方法:该方法用来从Hashtable中移除带有指定键的元素,其语法格式如下:public virtual void Remove(Object value)
Hashtable hashtable = new Hashtable(); //实例化Hashtable对象
hashtable.Add("id", "600719"); //向Hashtable哈希表中添加元素
hashtable.Add("name", "denylau");
hashtable.Add("sex", "男");
hashtable.Remove("sex"); //移除Hashtable哈希表中的指定元素
Console.WriteLine(hashtable.Count);
五、Hashtable的遍历
遍历其实与数组类似,但是Hashtable中的元素是一个键值对的集合,因此需要使用DictionaryEntry类型来遍历,下面通过一个例子来说明下吧!
Hashtable hashtable = new Hashtable(); //实例化Hashtable对象
hashtable.Add("id", "600719"); //向Hashtable哈希表中添加元素
hashtable.Add("name", "denylau");
hashtable.Add("sex", "男");
Console.WriteLine("\\t 键\\t 值");
//遍历Hashtable哈希表中的元素并输出其键值对
foreach (DictionaryEntry dicEntry in hashtable)
{
Console.WriteLine("\\t " + dicEntry.Key + "\\t " + dicEntry.Value);
}
Console.WriteLine();
六、Hashtable提供的其它方法介绍
1、Contains方法:该方法用来确定Hashtable中是否包含特定键,其语法格式如:public virtual bool Contains(Object key)
Hashtable hashtable = new Hashtable(); //实例化Hashtable对象
hashtable.Add("id", "600719"); //向Hashtable哈希表中添加元素
hashtable.Add("name", "denylau");
hashtable.Add("sex", "男");
Console.WriteLine(hashtable.Contains("id")); //判断Hashtable哈希表中是否包含指定的键
Hashtable hashtable = new Hashtable(); //实例化Hashtable对象
hashtable.Add("id", "600719"); //向Hashtable哈希表中添加元素
hashtable.Add("name", "denylau");
hashtable.Add("sex", "男");
Console.WriteLine(hashtable.ContainsValue("id")); //判断Hashtable哈希表中是否包含指定的键值
- C#中的反射
- 数据库字段类型对应C#数据类型
- 安装C# Windows服务需要“设置服务登录”
- C#中string.format的格式和用法
- C#中Dispose、析构函数、close的区别
- C#中==、Equals、ReferenceEquals的区别
- C#中is、as的区别
- C#快速排序
- C# xml和对象的序列化与反序列化
- C# Windows服务的创建、安装、调试
- C#中BeginInvoke与EndInvoke
- C# volatile与lock
- C#中static静态变量的用法
- C#如何读取Excel
- C#中typeof 与GetType()的区别
- C#中字符串转换成日期
- 十二星座爱情支配欲指数(十二星座爱情支配欲指数)
- 虐待儿童是发泄支配欲的愚蠢行为(虐待儿童是发泄支配欲的愚蠢行为)
- 你或许不知道你隐藏的支配欲望(你或许不知道你隐藏的支配欲望)
- 把宽体丰田86卖了,换成7.5代高尔夫GTI玩起姿态与性能并存的改装(把宽体丰田86卖了)
- 大众推出了第五代高尔夫GT(大众推出了第五代高尔夫GT)
- 换代在即,现在是抄底 7.5代 高尔夫的最佳时机吗(换代在即现在是抄底)
热门推荐
- python发送微信消息脚本(python实现微信定时每天和女友发送消息)
- MVC升级后报"当前上下文中不存在ViewBag"错的解决方法
- css3实用指南(css3截图_动力节点Java学院整理)
- 阿里云虚拟主机如何建(什么是虚拟MFA?阿里云设置虚拟MFA登录让账户更加安全!)
- fastdfs服务器集群(fastdfs+nginx集群搭建的实现)
- pythonsql注入检测(Python版Mssql爆破小脚本)
- vmwareesxi7教程(VMware ESXi安装使用记录附下载)
- python中random库的用法(Python minidom模块用法示例DOM写入和解析XML)
- 在python中导入模块有哪几种方式(Python不同目录间进行模块调用的实现方法)
- tomcat详细配置(Tomcat多实例部署及配置原理)