C#中Hash table的一些操作方法讲解
散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。
今天难得有了半天时间,鸣炮!任务都做完了,我终于有点时间去分析公司这个项目的代码,看到了其中有好多的对Hash table的应用。有好多的BLL层的代码的方法传入的是hashtable.其实我所做的模块中,如果有超过三个变量以上的参数传入我会将这些封装成一个个对象,可能是大学一直是用c语言,太多了参数的话就将其弄成结构体,到了C#我就封成对象,既然做的面向对象,为什么传参数还这样一个个用hashtable 一个个的add进来?我表示我初入C#,我没有去深究为什么公司大部分的都是用传入hash table的方式做参数。废话不多说了。记录一下对hash table的操作:
1、hash table要引入命名空间:system.colloctions;
Hashtable lobjHashtable = new Hashtable(); //实例化 lobjHashtable.Add(Key,value); //增加一个键值对,这里面这个key要是唯一的! lobjHashtable.Remove(Key);//移除一个key lobjHashtable.Clear();//清除所有的键值对 lobjHashtable.Contains(Key);// 是否包含某一个特定的Kye //eg lobjHashtable.Add("key1","value1"); lobjHashtable.Add("key2","value2"); lobjHashtable.Add("key3","value3"); //取出某一个键的值 string lstrTemp = (string)lobjHashtable["key1"];
c# 表的遍历方法:一下提供两种遍历hash table的方法
foreach(DictionaryEntry objDE in lobjHashtable) { string lstrKey = objDE.Key.ToString();//键 string lstrValue = objDE.Value.ToString();//值 } System.Collections.IDictionaryEnumerator emutor = lobjHashtable.GetEnumerator(); while(emutor.MoveNext()) { string lstrKey = emutor.Key.ToString(); string lstrValue emutor.Value.ToString(); }
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。如果你想了解更多相关内容请查看下面相关链接
上一篇:c#中LINQ的基本用法实例
栏 目:C#教程
下一篇:C#实现影院售票系统
本文地址:https://www.xiuzhanwang.com/a1/C_jiaocheng/4934.html
您可能感兴趣的文章
- 01-10C#通过反射获取当前工程中所有窗体并打开的方法
- 01-10C#实现Winform中打开网页页面的方法
- 01-10C#实现由四周向中心缩小的窗体退出特效
- 01-10Extjs4如何处理后台json数据中日期和时间
- 01-10C#中DataGridView常用操作实例小结
- 01-10C#编程获取资源文件中图片的方法
- 01-10asp.net中XML如何做增删改查操作
- 01-10C#利用反射技术实现去掉按钮选中时的边框效果
- 01-10C#中查找Dictionary中的重复值的方法
- 01-10C#中TreeView实现适合两级节点的选中节点方法
阅读排行
本栏相关
- 01-10C#通过反射获取当前工程中所有窗体并
- 01-10关于ASP网页无法打开的解决方案
- 01-10WinForm限制窗体不能移到屏幕外的方法
- 01-10WinForm绘制圆角的方法
- 01-10C#实现txt定位指定行完整实例
- 01-10WinForm实现仿视频播放器左下角滚动新
- 01-10C#停止线程的方法
- 01-10C#实现清空回收站的方法
- 01-10C#通过重写Panel改变边框颜色与宽度的
- 01-10C#实现读取注册表监控当前操作系统已
随机阅读
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 04-02jquery与jsp,用jquery
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 01-10C#中split用法实例总结
- 01-11ajax实现页面的局部加载
- 01-10delphi制作wav文件的方法
- 01-10SublimeText编译C开发环境设置