1.ArrayList
类似于数组,称数组列表,ArrayList可以动态维护,可以自动扩容。
命名空间:using System.Collections
属性:
count 获取ArrayList的元素个数
方法
Add (object value) 添加元素
RemoveAt(int index) 移除指定索引处元素
Remove(object value) 移除指定元素
Clear() 清除所有元素
List<T>和ArrayList()的区别:
不同点:
List<T> ArrayList()
1:对所保存的元素进行类型的约束 可以增加任何类型
2:添加/读取值类型元素的无须拆箱和装箱 添加/读取值类型元素的需要拆箱和装箱
相同点:
1:通过索引访问集合中的元素
2:添加的元素方法相同
3:删除元素的方法相同
2.Hashtable
称哈希表,通过键(key)和值(value)
属性:
count Hashtable中元素个数
Keys Hashtable中键的集合
Value Hashtable中值得集合
方法:
Add(object Keys,object value) 添加元素
Remove (object value) 移除指定元素
Clear() 清除所有元素
Dictionary<k,V> 和Hashtable的区别:
不同点:
Dictionary<k,V> Hashtable
1:对所保存的元素进行约束 可以增加任何类型
2:添加/读取值类型元素的无须拆箱和装箱 添加/读取值类型元素的需要拆箱和装箱
相同点:
1:通过Key获取Value
2:添加的元素方法相同
3:删除元素的方法相同
4:遍历方法相同
3.泛型集合
泛型<T>最常见的用途是创建集合类
泛型集合可以约束集合内元素类型
典型泛型集合:
list<T>
dictionary<k,v>
<t> <k,v>表示泛型集合中的元素类型
list<se> engineers =new list<se>();
遍历
foreach(SE se in engineers){
messagebox.show(se.SayHi());
}
dictonary<k,v>通常称为字典,<k,v>约束集合中元素类型
编译时检查类型约束,无需装箱拆箱操作