命名空间

System.Collections

名称

哈希表(Hashtable)

描述

用于处理和表现类似keyvalue的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存储对应于key的值。Hashtable中keyvalue键值对均为object类型,所以Hashtable可以支持任何类型的keyvalue键值对.

二,哈希表的简单操作

Hashtable hshTable = new Hashtable(); //  创建哈希表
hshTable .Add("Person1",  "zhanghf");  //  往哈希表里添加键值对
hshTable .Clear();  //移除哈希表里所有的键值对
hshTable .Contains("Person1");   //判断哈希表里是否包含该键
string name = (string)hshTable["Person1"].ToString(); //取哈希表里指定键的值
hshTable.Remove("Person1"); //  删除哈希表里指定键的键值对
IDictionaryEnumerator en = hshTable.GetEnumerator();  //  遍历哈希表所有的键,读出相应的值
while (en.MoveNext())
            {
               string str = en.Value.ToString(); 
            }

下面控制台程序将包含以上所有操作:

class Program
{
static void Main(string[] args)
{
// 创建一个Hashtable实例
Hashtable ht=new Hashtable(); // 添加keyvalue键值对
ht.Add("A","1");
ht.Add("B","2");
ht.Add("C","3");
ht.Add("D","4"); // 遍历哈希表
foreach (DictionaryEntry de in ht)
{
Console.WriteLine("Key -- {0}; Value --{1}.", de.Key, de.Value);
} // 哈希表排序
ArrayList akeys=new ArrayList(ht.Keys);
akeys.Sort();
foreach (string skey in akeys)
{
Console.WriteLine("{0, -15} {1, -15}", skey, ht[skey]); } // 判断哈希表是否包含特定键,其返回值为true或false
if (ht.Contains("A"))
Console.WriteLine(ht["A"]); // 给对应的键赋值
ht["A"] ="你好"; // 移除一个keyvalue键值对
ht.Remove("C"); // 遍历哈希表
foreach (DictionaryEntry de in ht)
{
Console.WriteLine("Key -- {0}; Value --{1}.", de.Key, de.Value);
} // 移除所有元素
ht.Clear(); // 此处将不会有任何输出
Console.WriteLine(ht["A"]);
Console.ReadKey();
}
}

  转载自http://www.cnblogs.com/tank110/archive/2010/10/18/1854013.html

C#中HashTable的用法示例2的更多相关文章

  1. C#中HashTable的用法示例1

    一,哈希表(Hashtable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似keyvalue的键值对,其中 ...

  2. jQuery中$.fn的用法示例介绍

    $.fn是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效,下面有个不错的示例,喜欢的朋友可以参考下 如扩展$.fn.abc(),即$.fn.abc()是对jquery ...

  3. [转]Linux中find常见用法示例

    Linux中find常见用法示例[转]·find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \;find命令的参 ...

  4. oracle中to_date详细用法示例(oracle日期格式转换)

    这篇文章主要介绍了oracle中to_date详细用法示例,包括期和字符转换函数用法.字符串和时间互转.求某天是星期几.两个日期间的天数.月份差等用法 TO_DATE格式(以时间:2007-11-02 ...

  5. Linux中 find 常见用法示例

    Linux中find常见用法示例 #find path -option [ -print ] [ -exec -ok command ] {} \; #-print 将查找到的文件输出到标准输出 #- ...

  6. python中hashlib模块用法示例

    python中hashlib模块用法示例 我们以前介绍过一篇Python加密的文章:Python 加密的实例详解.今天我们看看python中hashlib模块用法示例,具体如下. hashlib ha ...

  7. 实用ExtJS教程100例-006:ExtJS中Window的用法示例

    在前面几个示例中,我们演示了MessageBox的各种用法,今天这篇文章将演示如何使用Window. 我们首先来创建一个窗口: var win = Ext.create("Ext.windo ...

  8. C#中HashTable的用法

    一,哈希表(Hashtable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似keyvalue的键值对,其中 ...

  9. C#中HashTable的用法 【转】

    一,哈希表(Hashtable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似keyvalue的键值对,其中 ...

随机推荐

  1. POJ 1936 All in All(模拟)

    All in All 题目链接:http://poj.org/problem?id=1936 题目大意:判断从字符串s2中能否找到子串s1.字符串长度为10W. Sample Input sequen ...

  2. ecshop添加自定义lbi文件

    1.找到 admin下面 includes\lib_template.php 找到 $page_libs = array( 这里…. 给您需要的页面加上 你自己的 boke365.lbi 2.找到 l ...

  3. Oracle replace函数使用

    需求是要修改Oracle某列表中把这一列中全部的100换成200: update b_nodes a set a.childs=replace((select childs from b_nodes ...

  4. 怎样制作PHP验证码?

    <?php /** *制作验证码 *1.启动session *2.设定标头 *3.创建画布 *4.创建颜色 *5.创建随机数并放到画布上 *6.将得到的若干随机数放入session中 *7.添加 ...

  5. execute、executeUpdate、executeQuery三者的区别及返回值

    一.boolean execute(String sql)允许执行查询语句.更新语句.DDL语句.返回值为true时,表示执行的是查询语句,可以通过getResultSet方法获取结果:返回值为fal ...

  6. PDF抽取文字 C# with Adobe API

    前提是PDF里面是有文字的! 一次性取得所有页内容: /// <summary> /// 改进前取得所有页的所有word /// </summary> /// <para ...

  7. python之requests-multipart/from-data

    示例代码:files = {"token":(None,token), "key":(None,key), "file":"hel ...

  8. 代理服务器基本知识普及代理IP使用方法!

    本文并未从专业角度进行详细讲解,而是从应用的角度出发来普及一些代理服务器的基本知识.文章明显是搜集多方资料的拼凑,而且比较老了,但往往越老的东西越接近事物的本质,更容易窥探到原理,对于刚接触的人来说, ...

  9. Action类一般情况为何要继承ActionSupport

    struts2中的action可以继承ActionSupport,也可以不继承ActionSupport.不继承ActionSupport的情况只需要有一个方法,返回String,即可,记住,在继承A ...

  10. hadoop 各种counter 解读

    http://blog.sina.com.cn/s/blog_61ef49250100uxwh.html 经过了两天的休息与放松,精神饱满了吧?上星期我们学习了MapReduce的过程,了解了其基本过 ...