hashtable 的存储方式

使用方法:

1.引入包含Hashtable的命名空间

using System.Collections;   // 引入Hash所在的命名空间

2.往hash表里面添加数据

Hashtable hash = new Hashtable();
// 往hash里面添加数据
hash.Add(1, "Hello");
hash.Add(2, "World");
hash.Add(3, "C#");

3.访问Hash表的方法

1.键对于值

2.遍历键的集合

3.使用遍历器

// 访问hash数据的3种方法:
// 访问hash数据,采用键的方式
Console.WriteLine(hash[1]);
// 可以采用遍历它的键集合访问
var skeys = hash.Keys; // hash的键的集合
foreach(object o in skeys)
{
Console.WriteLine("键:{0},值:{1}", o, hash[o]);
}
// 遍历器访问
var ie = hash.GetEnumerator(); // 获取遍历器
while (ie.MoveNext()) // 依次遍历每一行数据
{
Console.WriteLine("键:{0},值:{1}", ie.Key,ie.Value);
}

泛型

ArrayList arrList = new ArrayList();
arrList.Add(1);
arrList.Add("hello");
arrList.Add(DateTime.Now);

在使用ArrayList的时候,无法保证类型的一致性,泛型的出现就是解决这个问题,泛型规定了数据类型

1.引入泛型的命名空间

using System.Collections.Generic;   // 泛型使用的命名空间

2.泛型使用

// 泛型规定了数据类型
List<int> list = new List<int>();
list.Add(1);
list.Add(2);

3.泛型的遍历

foreach遍历

// 泛型的遍历
foreach(int i in list)
{
Console.WriteLine(i);
}

for语句遍历

// for语句遍历
for(int i = 0; i < list.Count; i++)
{
Console.WriteLine("泛型的索引:{0},泛型的数据:{1}", i, list[i]);
}

字典集合存储与访问

与hashtable差不多,但是类型是一致的

// 字典集合的存储
Dictionary<string, string> dic = new Dictionary<string, string>();
dic.Add("1001", "Jake");
dic.Add("1002", "Max");
dic.Add("1003", "Kate");
// 采用类似与访问hash方式访问
Console.WriteLine(dic["1001"]); // 获取键遍历访问
var keys = dic.Keys;
foreach(string str in keys)
{
Console.WriteLine("键:{0},值:{1}",str,dic[str]);
}
// 采用遍历器去访问
var ie = dic.GetEnumerator();
while (ie.MoveNext())
{
Console.WriteLine("键:{0},值:{1}", ie.Current.Key, ie.Current.Value);
}

C#基础-hashtable,泛型和字典集合的更多相关文章

  1. python的学习笔记01_4基础数据类型列表 元组 字典 集合 其他其他(for,enumerate,range)

    列表 定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素 特性: 1.可存放多个值 2.可修改指定索引位置对应的值,可变 3.按照从左到右的顺序定义列表元素,下标从0开始顺序访问 ...

  2. Python入门基础学习(列表/元组/字典/集合)

    Python基础学习笔记(二) 列表list---[ ](打了激素的数组,可以放入混合类型) list1 = [1,2,'请多指教',0.5] 公共的功能: len(list1) #/获取元素 lis ...

  3. Python 基础-python-列表-元组-字典-集合

    列表格式:name = []name = [name1, name2, name3, name4, name5] #针对列表的操作 name.index("name1")#查询指定 ...

  4. day07-Python运维开发基础(深/浅拷贝、字典/集合/相关操作)

    1. 深拷贝与浅拷贝 # ### 深拷贝 和 浅拷贝 """ a = 7 b = a a = 8 print(b) lst1 = [1,2,3] lst2 = lst1 ...

  5. c#重点[集合类型]异常,数组,集合ArrayList,List<>,hashTable,hashtable泛型(Dictionary)

    1.foreach[对一些数组或集合进行遍历] foreach(类型 变量名 in 集合对象){语句体} //定义一个数组 ,,,,, }; foreach(var i in sNum1) { Con ...

  6. C#面向对象14 List泛型集合/装箱和拆箱/字典集合(Dictionary)

    1.List泛型集合 using System; using System.Collections.Generic; using System.Linq; using System.Text; usi ...

  7. [转帖]C#中字典集合HashTable、Dictionary、ConcurrentDictionary三者区别

    C#中字典集合HashTable.Dictionary.ConcurrentDictionary三者区别 https://blog.csdn.net/yinghuolsx/article/detail ...

  8. Java基础学习笔记十五 集合、迭代器、泛型

    Collection 集合,集合是java中提供的一种容器,可以用来存储多个数据. 在前面的学习中,我们知道数据多了,可以使用数组存放或者使用ArrayList集合进行存放数据.那么,集合和数组既然都 ...

  9. python基础一 -------如何在列表字典集合中根据条件筛选数据

    如何在列表字典集合中根据条件筛选数据 一:列表 先随机生成一个列表,过滤掉负数 1,普通for循环迭代判断 2,filter()函数判断,filter(函数,list|tuple|string) fi ...

随机推荐

  1. crypto-js遇到的坑

    最近在做H5网站,用websocket跟后台交互时,需要对数据进行加密,于是选了crypto-js组件,GitHub上api也不少,写的也清晰,但实际使用上会遇到不少坑: 加密解密时,传入的密钥key ...

  2. input type="image" 提交表单

    提到<input type="image"  />,说起来有些惭愧.之前的工作基本每周都要制作两到三个注册用户的网页.其中就用它提交表单. 那个时候我想当然的以为这是用 ...

  3. poj 3345 树形DP 附属关系+输入输出(好题)

    题目连接:http://acm.hust.edu.cn/vjudge/problem/17665 参考资料:http://blog.csdn.net/woshi250hua/article/detai ...

  4. <Android开源库 ~ 1> GitHub Android Libraries Top 100 简介

    转载自GitHub Android Libraries Top 100 简介 本项目主要对目前 GitHub 上排名前 100 的 Android 开源库进行简单的介绍, 至于排名完全是根据 GitH ...

  5. Android - 页面返回上一页面的三种方式

    今年刚刚跳槽到了新公司,也开始转型做Android,由此开始Android的学习历程. 最近在解很多UI的bug,在解bug过程中,总结了在UI的实现过程中,页面返回上一页面的几种实现方式. 一. 自 ...

  6. JSON中不能加注释

    今天犯了一个白痴级的错误,那就是向JSON数据文件中,很多行后面添加注释(Comment,//). 导致Node.js程序不能读取JSON文件,Server启动失败. Debug时间蛮久,经同事提醒才 ...

  7. "ssllabs" website and "testssl" website

    "https://www.ssllabs.com" could scan your server and give results about the weakness of yo ...

  8. IDEA中git的配置与使用

    IDEA中git的配置与使用 1.介绍 git是目前非常流行的版本管理管理软件,因其具有分布式特点,越来越受到企业的欢迎.IDEA作为一款优秀的开发软件,其内部也提供了对git的支持. 2.下载并安装 ...

  9. mysql 5.6 zip安装,启动失败,1067错误

    在使用mysql5.6 zip压缩包安装mysql过程中,启动过程,老是卡在1067启动错误上,翻看网上各种解决方案,卸载干净重装,重启,都不管用. 网上各种教程都是新建 my.ini mysql 配 ...

  10. April 17 2017 Week 16 Monday

    You will find that it is necessary to let things go; simply for the reason that they are heavy. 你会明白 ...