[转载]C# HashTable 遍历与排序
private void Form1_Load(object sender, EventArgs e)
{
Hashtable ht = new Hashtable(); ht.Add("job", "a");
ht.Add("jobmon", ""); //单个取值,方法比较特别
string a = ht["jobmon"].ToString();
//Console.WriteLine(a); //第一种方法遍历
foreach(DictionaryEntry de in ht)
{
Console.WriteLine(de.Key);
Console.WriteLine(de.Value);
} Console.WriteLine("-------------------------"); //第二种方法遍历
IDictionaryEnumerator enumerator = ht.GetEnumerator();
while (enumerator.MoveNext())
{
Console.WriteLine(enumerator.Key);
Console.WriteLine(enumerator.Value);
} Console.WriteLine("++++++++++++++++++++++++++");
//hashtable的排序第一种方法,按照键的大小排序 ArrayList al = new ArrayList(ht.Keys); al.Sort();
al.Reverse(); //反向排序 foreach (string str in al)
{
Console.WriteLine(str + " " + ht[str]);
} Console.WriteLine("++++++++++++++++++++++++++");
//hashtable的排序第二种方法,按照值的大小排序 ArrayList alv = new ArrayList(ht.Values);
alv.Sort(); foreach (string str in alv)
{
IDictionaryEnumerator enumerator2 = sl.GetEnumerator(); while (enumerator2.MoveNext())
{
if (str.Equals(enumerator2.Value.ToString()))
{ Console.WriteLine(enumerator2.Key + ":" + enumerator2.Value);
} } } Console.WriteLine("++++++++++++++++++++++++++");
//hashtable的排序第三种方法,用SortedList代替hashtable SortedList sl = new SortedList(); sl.Add("a", "a1");
sl.Add("c", "c1");
sl.Add("b", "b1"); IDictionaryEnumerator enumerator1 = sl.GetEnumerator();
while (enumerator1.MoveNext())
{
Console.WriteLine(enumerator1.Key);
Console.WriteLine(enumerator1.Value);
} }
原文地址:http://blog.csdn.net/zhenniubile/article/details/6079547
[转载]C# HashTable 遍历与排序的更多相关文章
- c# Dictionary的遍历和排序
c# Dictionary的遍历和排序 c#遍历的两种方式 for和foreach for: 需要指定首位数据.末尾数据.数据长度: for遍历语句中可以改变数据的值: 遍历规则可以自定义,灵活性较高 ...
- Java map 详解 - 用法、遍历、排序、常用API等
尊重原创: http://www.cnblogs.com/lzq198754/p/5780165.html 概要: java.util 中的集合类包含 Java 中某些最常用的类.最常用的集合类是 L ...
- Object-c学习之路八(NSArray(数组)遍历和排序)
今天学习了NSArray的遍历和排序,现在在这里做一下总结: 遍历现在实现了四中方法: 排序大概有三中方法:(代码中都有注释) 关于对象的排序还是以Student和Book为例 每个Student持有 ...
- jdk8中关于操作集合的一些新特性,遍历和排序操作
jdk8增加了不少新的东西,在集合操作这块,就有如 lamda表达式,stream,sort,optional等新的类,主要涉及遍历和排序等方面,新特性提升了不少性能,我们开发就是要拥抱新事物,守着老 ...
- PCB 合拼遍历(全排序+旋转90度) 基本遍历方法
分享一下PCB合拼的组合的遍历方法,在分享之前先纠正一下 PCB拼板之多款矩形排样算法实现--学习 时间复杂度计算错误 一.PCB 合拼(全排序+旋转90度)的时间复杂度是多少? 二.合拼遍历(全 ...
- java 集合之Arraylist的遍历及排序
最近培训是先学习java基础 从最基本的开始学起 因为今天刚刚开博客 要把上周的一些重点内容归纳一下 1.Arraylist常用遍历以及排序 import java.util.ArrayList; i ...
- Java Hashtable遍历与方法使用
参考文档 我参考了Java 集合系列11之 Hashtable详细介绍(源码解析)和使用示例,阅读了jdk 1.8的源码 Hashtable的继承关系 Hashtable继承了Dictionary类, ...
- C#中hashtable的赋值、取值、遍历、排序操作
一,哈希表(Hashtable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key/value的键值对,其 ...
- c# Dictionary的遍历和排序(转)
c#遍历的两种方式 for和foreach for: 需要指定首位数据.末尾数据.数据长度: for遍历语句中可以改变数据的值: 遍历规则可以自定义,灵活性较高 foreach: 需要实现ienume ...
随机推荐
- ruby sass Encoding::CompatibilityError for changes
在'compass create projectName','cd projectName'之后,show "Encoding::CompatibilityError on line [&q ...
- Rshare Pro是否可以放入至客户企业App Store?
现在很多客户内部部署了苹果授权的企业内部的AppStore,我们的Rshare Pro 是完全允许放入企业搭建的AppStore平台中.但每份需要收费20美元,换成人民币是120元.
- js运动
一.offsetWidth / offsetHeight 获取整个块的宽度/高度,包括border 二.clientWidth / clientHeight 获取块的宽度/高度,不包括border 三 ...
- 在webservice中传递Hashtable
webservice中不支持hashtable的数据类型,那么如何在webservice中传递hashtable呢?我们可以通过将hashtable转化为webservice中支持的数组的类型来进行传 ...
- sQL语言分类 DML、DDL、DCL区别
总体解释:DML(data manipulation language): 它们是SELECT.UPDATE.INSERT.DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据 ...
- spring中加入log4j
spring中加入log4j <context-param> <param-name>log4jConfigLocation</param-name> <pa ...
- Oracle学习第一天---安装和基础入门
国庆七天假,决定静下心来入门Oracle数据库. 环境:Ocacle 11g 软件安装包和安装图解,大家可以在我的百度网盘上下载:链接:http://pan.baidu.com/s/1ntjDEnZ ...
- XMPP即时通讯(代码实现)
1.配置XMPP(XMPPConfig.m) 2.配置XMPPFramework框架 3.创建单例类(XMPPManager.h/XMPPManager.m)管理器 XMPPManager.m: #i ...
- GDI+中发生一般性错误之文件被占用
有多种原因可能导致这个异常出现,比如创建文件的权限不足.文件被占用等. 这里提供一个使用Stream读取图片避免文件被占用的方法. public Image GetImageFromStream(st ...
- 关于Ionic的安装
Ionic是一个前端的框架,帮助开发者使用HTML5, CSS3和JavaScript做出原生应用. http://ionicframework.com/getting-started/ 这里介绍了如 ...