红豆带你从零学C#系列之:使用集合组织相关数据

ArrayList(数组列表)

Why如果一个公司有5名员工,一般我们会用长度为5的对象数组来存储信息,但要是有新员工来了,5个长度的数组就不够用了,因此我们需要一种能够根据需要自动分配容量的动态数组

What类似于数组的数据存储容器,它的容量是可以动态分配和调整的,并且提供了一系列的方法对其中的元素进行增删改的操作

Where例如要存储一组不确定的人员信息、一组分数、一组字符串、或者一组符号

How

语法:ArrayList  array = new  ArrayList();

  1. 容量会根据需要自动拓展
  2. 根据索引下标获取里面的元素:array[0],array[1]
  3. 删除其中一个元素之后,后面的元素会往前移,索引位置也会重新调整
  4. 任意数据类型放入ArrayList之后都会变成object类型,如果要拿出来使用的话,就要转化成相应的数据类型
  5. 按照“先进先出”顺序存储

int

Count

返回ArrayList中实际包含的元素个数

void

Add(Object value)

将对象添加到ArrayList结尾处

void

RemoveAt(int index)

移除指定索引处的元素

void

Remove(Object value)

移除特定的对象

void

Clear()

从ArrayList中移除所有元素

 

 

HashTable(哈希表)

语法:HashTable  hash = new  HashTable();

  1. 哈希表每一个数据存放都是以“键/值对”的方式来进行的
  2. 哈希表不能通过索引下标访问元素,只能用foreach来访问
  3. 任意数据类型放入HashTable之后都会变成object类型,如果要拿出来使用的话,就要转化成相应的数据类型
  4. 按照“先进后出”的顺序存储

 

int

Count

返回ArrayList中实际包含的元素个数

void

Add(Object key,Object value)

将对象添加到HashTable结尾处

void

Remove(Object value)

移除特定的对象

void

Clear()

从HashTable中移除所有元素

 

 

 

课堂编程题:

      做两个空方法,分别使用ArrayList和HashTable两个集合插入5名学生,添加完之后,都要删除“张三”这名学生,再删除集合里面最后一名学生,最后循环集合输出所有学生信息

 

最后把ArrayList和List<T> 、HashTable和Dictionary<K,V>进行代码互换,List<T>和Dictionary<K,V>集合的用法就该学会了。

 

List<T>泛型集合

语法:List<T>  list = new  List<T>();

  1. 容量会根据需要自动拓展
  2. 根据索引下标获取里面的元素:array[0],array[1]
  3. 删除其中一个元素之后,后面的元素会往前移,索引位置也会重新调整
  4. 按照“先进先出”顺序存储

 

Dictionary<K,V>泛型集合

语法:Dictionary<k,v>  dict = new  Dictionary<k,v>();

  1. 哈希表每一个数据存放都是以“键/值对”的方式来进行的
  2. 哈希表不能通过索引下标访问元素,只能用foreach来访问
  3. 按照“先进后出”的顺序存储

 

posted on 2016-05-21 10:11  MrK先生  阅读(453)  评论(2编辑  收藏  举报

导航