浪漫骑士必胜

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

ArrayList和HashTable妙用二

上一篇文章当中我重点介绍了ArrayList及当中的基本用法。在今天的文章当中,我们要重点的介绍HashTable的用法。记得,在我一次找工作的时候,面试了一家叫搜房网的公司。公司的面试官问我一个问题,就是会不会做视频的字幕。忆当年,自己还真的没有这方面的经验。不过我们在学习了这章之后会对播放器的制作打下良好的基础。因为不管是音乐播放器还是视频播放器,里面都有处理歌词、或是台词的内容。了解完这章之后,我们会发现处理这些个内容并不复杂。

 

图一、Hashtable

 

图二、for循环对Hashtable进行的遍历

 

图三、foreach遍历,请大家注意这点

  这里我们复习一下用foreach遍历数组,集合,以及哈希表。看看它们之间有什么异同。

 

图四、用foreach遍历 数组 集合 哈希表

  添加命名空间的快捷键:shift+Alt+F10

 

 

图五、哈希表的特点

  下面主要介绍下哈希表中的方法。

 

图六、Contains系列方法

 

图七、Remove

 

图八、简体转换成繁体

  这道题目用到的知识点,主要就是题目上面我们介绍的知识点。这点需要大家细心的体会一下子。现在做的这道题目,为我们后面讲解字典的做法打下基础。

 

泛型集合

List<T>

就是为了专门处理某种类型

ArrayList对应的是List<类型名>

在尖括号中写什么类型,这个集合就变成了什么类型的集合

添加数据、插入数据、索引访问数据都是这个类型的,不用考虑所有的转化问题

 

在我们用ArrayList和Hashtable默认的是object类型,拿出来的时候需要转换,比较的麻烦

所有List<>的出现解决了这一问题。可以定义用户输入的类型。

下面我们来看看它的写法:

 

图九、List的写法

 

图十、list.AddRange

 

图十一、用循环的方式往里面添加数据

 

图十二、insert,Max,Min

 

图十三、sum,average

 

图十四、判断10个随机生成的数是不是质数

 

Dictionary<TKey,TValue>

默认提供命名空间,提倡使用

Hashable对应的是  Dictionary<键的类型,值得类型>

 

在尖括号中填入键的类型与值得类型,那么这个集合就变成了一个指定的键值对模型其使用方式与Hashtable一样

 

 

图十五、dictionary的写法

 

图十六、往dictionary中放入键和值

 

 

图十七、简转繁dictionary做法

到这里我们已经把《ArrayList和HashTable妙用一》当中没有讲完的内容阐述清楚了。我们发现在使用上面List<T>和Dictionary<TKeys,TValue>比之前我们学的ArrayList和HashTable简单一些。这里也请大家注意它们的异同。考虑到知识的完整性,我们还是将这些都写了出来。

 同时,我们发现学了这一段内容之后,就可以做很多有意思的事情了。在之后的文章当中,我们还会对winform基础进行详细的介绍。等到那时,我们就能边在窗体上拖控件,又能边在控制台上面写代码了。

 

下面的这个练习非常的有意思。大家可以试着做做看。

 

图十八、拆字,用火星文显示文章内容

 

 

图十九、新英汉字典解析图

 

作者近期文章列表:

C#基础教程(完全免费,献给代码爱好者的最好礼物。注:本 作者分享自己精心整理的C#基础教程,无任何商业目的。希望与 更多的代码爱好者交流心得,也请高手多多指点!!!)
面向过程 三种循环的比较
C#中的方法(上)
我们常见的数组
面向对象 思想的转变
C#中超级好用的类
C#中析构函数和命名空间的妙用
C#中超级好用的字符串
C#中如何快速处理字符串
值类型和引用类型及其它
ArrayList和HashTable妙用一
GDI+ 这些年我收集的GDI+代码
这些年我收集的GDI+代码2
HTML概述 你不能忽视的HTML语言
你不能忽视的HTML语言2精编篇
你不能忽视的HTML语言3
posted on 2012-08-06 17:33  小事好  阅读(4396)  评论(12编辑  收藏  举报