集合:是一组可变数量的元素的组合,这些元素可能共享某些特征,需要以某种操作方式一起进行操作。
集合与数组的区别:数组是连续的、同一类型
要使用集合必须先引用命名空间,using System.Collection;
一、ArrayList集合 (弱类)
定义:ArrayList 变量名=new ArrayList();
赋值:变量名.Add(值/变量); 返回一个object类型
Object类型,所有类型的基础类型
注意:其索引长度获取count个数与数组length长度区分
取值:变量名[索引值]
插队:变量名.Insert(索引,变量/值);
移除:变量名.remove(值/变量); 移除对象的第一个匹配项
变量名.removeAt(索引);移除索引处值/变量
翻转:变量名.Reverse(); 翻转整个集合
变量名.Reverse(索引,个数); 从索引处翻转个数个值
清空:变量名.Clear();移除所有对象
个数:对象.count()
是否包含:对象.contains(值)
二List集合(强类)
基本表现形式,List<T> T:表示泛型
例:List<int> 变量名=new List<int>
List泛型与ArrayList功能一样使用
三哈希表集合(弱类)
Hashtable 变量名=new Hashtable(键,值);
哈希表与其他不同其采用键值对形式,例:
hs.Add(“aa”,”hbghj”);
hs.Add(1,”hjhdk”);
取值:键--对象.key;
值--对象.value;
哈希表型无,插队和翻转
四字典型集合(强类)
Dictionary:固定类型的哈希表集合
例:Dictionary<int,string> dic=new dictionary<int,string>;
五队列集合
队列集合是指按队列形式进入出现的集合
1》添加值:对象.Enqueue(值)
2》取值:对象.Dequeue()
例:Queue q=new Queue();
队列集合Queue赋值有所不同其可赋值任意类型,但结构与其他不同
例:q.Enqueue(“qwe”);
q.Enqueue(123);
其取值只能取一个且按队列形式出现并清空前变量,取值遵循先进先出原则
六栈集合
栈集合与队列集合正好相反,栈集合为挤公交型,先进后出
例:stack s=new stack();
赋值:s.Push();
取值:s.Pop();
集合循环输出结果多采用foreach型其表现形式为foreach(类型 变量名 in 集合 ){};