hashtable也比称作哈希表,键值对或者关联数组

1. 先引用using System.Collections;命名空间

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

hashtable中的每个元素是一个存储在DictionaryEntry 对象中的键值对。

代码展示:

//hashtable的添加和创建

Hashtable hs = new Hashtable();
//第一张添加方式
hs.Add(1, "张三");
hs.Add(2, "李四");
//第二种添加方式
hs[3] = "王锦";//这种方式如果存在就是重新赋值,如果不存在就会自动添加
hs[4] = "王强";
//数组通过length来确定长度
//而hashtable使用count来确定长度
Console.WriteLine(hs.Count);

//第一种输出hashtable中的值
foreach (DictionaryEntry my in hs)
{
Console.WriteLine("键为{0},值为{1}", my.Key, my.Value);
}
Console.WriteLine("=========================================");
//第二种输出方式
foreach (object my in hs.Keys)
{
Console.WriteLine("键为{0},值为{1}", my, hs[my]);
}
//元素的删除 remove

if (hs.ContainsKey(1)) //判断键是否存在
{
Console.WriteLine("存在键为{0}的值为", hs[0]);
}
if (hs.ContainsValue("王锦"))
{
Console.WriteLine("存在");
}
// hs.Remove(3); //清除一个元素
// hs.Clear(); //清除全部的元素
Console.Read();

hashtable详解的更多相关文章

  1. Java中的HashTable详解

    Hashtables提供了一个很有用的方法可以使应用程序的性能达到最佳. Hashtables(哈 希表)在计算机领域中已不 是一个新概念了.它们是用来加快计算机的处理速度的,用当今的标准来处理,速度 ...

  2. PHP源代码分析(第一章):Zend HashTable详解【转】

    转载于http://www.phppan.com/2009/12/zend-hashtable/ 在PHP的Zend引擎中,有一个数据结构非常重要,它无处不在,是PHP数据存储的核心,各种常量.变量. ...

  3. PHP数据核心:Zend HashTable详解

    最近看了篇关于php内的hashtable的文章,PHP数据存储的核心,各种常量.变量.函数.类.对象等都用它来组织的.转载地址 http://www.phppan.com/2009/12/zend- ...

  4. Java集合详解4:一文读懂HashMap和HashTable的区别以及常见面试题

    <Java集合详解系列>是我在完成夯实Java基础篇的系列博客后准备开始写的新系列. 这些文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查 ...

  5. 详解 Hashtable

    至于HashTable,本人只想说,除了它们各自的特点是截然相反外,其余性质 以及 用法和HashMap的性质几乎一样, (有关Map集合的基本性质,请观看本人博文-- <详解 Map集合> ...

  6. java的集合框架最全详解

    java的集合框架最全详解(图) 前言:数据结构对程序设计有着深远的影响,在面向过程的C语言中,数据库结构用struct来描述,而在面向对象的编程中,数据结构是用类来描述的,并且包含有对该数据结构操作 ...

  7. Java提高篇——equals()与hashCode()方法详解

    java.lang.Object类中有两个非常重要的方法: 1 2 public boolean equals(Object obj) public int hashCode() Object类是类继 ...

  8. 多线程之 Final变量 详解

    原文: http://www.tuicool.com/articles/2Yjmqy 并发编程网:http://ifeve.com/java-memory-model/ 总结: Final 变量在并发 ...

  9. ASP.NET运行时详解 集成模式和经典模式

    遗留问题 在<ASP.NET运行时详解 生命周期入口分析>中遗留两个问题,包括Application的InitInternal方法执行细节.IIS6和II7经典模式请求管道管理类Appli ...

随机推荐

  1. SpringMVC实现 MultipartFile 文件上传

    1. Maven 工程引入所需要的依赖包 2. 页面需要开放多媒体标签 3. 配置文件上传试图解析器 4. 接收图片信息,通过 IO 流写入磁盘(调用解析其中的方法即可) 如下: 1.1 引入所依赖的 ...

  2. opencv3.1线性可分svm例子及函数分析

    https://www.cnblogs.com/qinguoyi/p/7272218.html //摘自:http://docs.opencv.org/2.4/doc/tutorials/ml/int ...

  3. kivy中bind的使用

    一般在kivy中使用bind()来绑定回调函数,所谓回调函数,个人理解就是一个预先定义好的方法, 因为APP是静态的, 需要等待用户进行操作, 特定的操作背后都绑定了特定的回调函数, 一般有两种类型: ...

  4. scrapy selenium 登陆zhihu

    # -*- coding: utf-8 -*- # 导入依赖包 import scrapy from selenium import webdriver import time import json ...

  5. nginx动静态分离以及配置https(安全组强行切换以及导致的问题解决)

    公司原来的网络采用http/https同时支持的方式,http并不会强制自动跳转到https,最近要求强制切换,导致了一系列问题.趁今天测试完成了,整理如下: 1.要求HTTP自动跳转到HTTPS: ...

  6. echarts自定义图例legend文字和样式

    话不多说,先上效果图. 要完成这个图并不难,主要是下面那个图例比较难,需要定制. 让我们从官方文档找找思路,官方文档关于legend.formatter是这样的:链接在这 难点在于: 1.这里的图例文 ...

  7. NOIP 2016 蚯蚓 (luogu 2827 & uoj 264) - 鬼畜的优化

    题目描述 本题中,我们将用符号\lfloor c \rfloor⌊c⌋表示对c向下取整,例如:\lfloor 3.0 \rfloor= \lfloor 3.1 \rfloor=\lfloor 3.9 ...

  8. django基础 -- 7.Ajax

    一.ajax 的特点 1.异步交互:客户端发出一个请求后,需要等待服务器响应结束后, 才能发出第二个请求 2.局部刷新:给用户的感受是在不知不觉中完成请求和响应过程. 二.ajax 模板示例 ($.a ...

  9. C#趋势图(highcharts插件)

    <!--图表效果展现--> <div class="TUI-layout-center" style="overflow: auto;" id ...

  10. CentOS 安装 Redis 笔记

    Redis 安装 yum install redis -y 在启动 redis-server 之前,你需要修改配置文件/etc/redis.conf: 找到 bind 127.0.0.1,将其注释,这 ...