ArrayList集合:
1、集合不需要指定类型
2、长度和索引自动维护(索引不断更新和变化)
//
foreach(Student stu in list){
}
Hashtable集合:
1、哈希表在存值是不会再分配下标
2、键值对 key:value
3、key是唯一的,重复会产生覆盖
4、哈希表的键和值都不需指定类型
5、所有不指定类型的,默认都是object
6、object是所有类的父类(基类)
7、只能根据建删除
Hashtable table = new Hashtable();
table.Add("a","张三");
table.Add("a","李四");
//通过key取值
string s1=(string)table["a"];
List集合:
1、泛型集合可以指定存储数据类型
2、避免了频繁的数据类型转换(装箱拆箱)
List<string> list =new List<string>;
list.Add("张三");
//这是类
List<Student> list2 =new List<Student>;
list2.Add(new Student());
Dictionary<K,V>集合:
键和值的数据类型是string类型,后边代码的元素添加,删除都和哈希表处理方法相同,遍历元素时不需要进行数据类型强制转换。Dictionary<K,V>通过键取值的TryGetValue方法,此方法包括两个参数,一个是要查询的键,另一个是获取的值,注意值前面使用out关键字。