一、//ArrayList
ArrayList myarry = new ArrayList();
myarry.Add(1);//添加元素
myarry.Add(2);//索引也是从零开始
myarry.Add(3);
myarry.Add(4);
myarry.Add(5);
myarry.Insert(3,"7");
//插入在索引号为3的位置一个为7的值
//后面的索引依次向后+1
//myarry.Remove(4);
//移除数据为4的元素
////括号里面是想要移除的数据
//myarry.RemoveAt(4);
//移除索引号为4的数据
int aa = myarry.Count;
//统计集合内元素的个数
Console.WriteLine("总共有"+aa+"个元素");
//myarry.Clear();//将集合清空
bool b = myarry.Contains(3);
//判断是否有括号内的数据,返回的是bool值(True或者False)
//int bb = myarry.IndexOf(2);
//int cc = myarry.LastIndexOf(2);
//Console.WriteLine(bb);
//myarry.Sort();
//自动进行排序,升序
//若需要降序排列,在自动排列之后,对整个集合进行反转指令
myarry.Reverse();
ArrayList ar = new ArrayList();
ar = (ArrayList)myarry.Clone();
//集合的克隆
foreach (object a in myarry)
{//从头到尾打印出集合中的所有元素
Console.WriteLine(a);
}
Console.ReadLine();
//集合中有元素是以object这个类型存在
//object类是所有类的基类
//小的数据类型不可以接收object类型的数据
//object类型的变量可以接收任何类型的变量
//string aaa = "2";
//object bbb = aaa;
//aaa不可以接收bbb的值
//Console.WriteLine(myarry[3]);
//Console.ReadLine();
Stack aa = new Stack();
aa.Push(1);//向stack集合中添加数据
aa.Push(2);
aa.Push(3);
aa.Push(4);
aa.Push(5);
//注意:Stack是没有索引的
//Console.WriteLine(aa[0]);//是错误的
Console.WriteLine(aa.Peek());//仅用来查看最后一位,不踢出
//aa.Pop();//弹出,踢出最后一个进入集合的数据
//Console.WriteLine( aa.Pop());
int aaa = aa.Count;//统计个数
aa.Clear();//清空集合
//foreach (object a in aa)
//{
// Console.WriteLine(a);
//}
Console.ReadLine();
////Arraylist集合
////定义集合,初始化
//ArrayList al = new ArrayList();
//al.Add(1);//添加元素,追加到集合的最后
//al.Add(2);
//al.Add(3);
//al.Add(4);
//Console.WriteLine(al[1]);
//al.Insert(1, 9);//在某个索引号上插入某个值
////插入之后,原本在1号索引上的之被顶到下一个索引号上,以此类推
//Console.WriteLine(al[1]);
//al.Remove(4);//这里放的是一个值,移除这个值,并且移除的是从前往后第一个这个值
//al.RemoveAt(3);//移除3号索引的值
////定义个数接收
//int geshu = al.Count;
//Console.WriteLine(geshu);
//al.Clear();//清空集合
//bool b = al.Contains(3);//判断是否有括号内的数据,返回的是bool值(True或者False)
//Console.WriteLine(b);
//al.Sort();//自动进行排序,升序
//al.Reverse();//将集合翻转,一般是进行Sort排序之后进行反转,变成降序
//克隆一个一抹一样的集合
//ArrayList aal = new ArrayList();
//aal = (ArrayList)al.Clone();//(ArrayList)al.Clone();这个的意思是把al.Clone();强制转换成ArrayList并赋值给aal
////遍历集合
//foreach (object a in al)
//{
// Console.WriteLine(a);
//}
////object类是所有数据类型的基类
//int a = 1;
//object b = a;
//object c = 3;
//a = (int)c;
//string d = "abcd";
//object e = d;
////练习一、输入人数,录入分数,存到集合里面,之后再读取出来,求平均分
//ArrayList al = new ArrayList();
//Console.Write("请输入班级人数:");
//int n = int.Parse(Console.ReadLine());
//double sum = 0;
//for (int i = 0; i < n; i++)
//{
// Console.Write("请输入第"+(i+1)+"个分数:");
// al.Add(double.Parse(Console.ReadLine()));
// sum += double.Parse(al[i].ToString());
//}
//Console.WriteLine("平均分为:" + (sum / n));
//Console.ReadLine();
二、Queue 队列集合
//先进的先出,后进的后出
//没有索引
Queue qq = new Queue();
qq.Enqueue(1);//给集合中添加元素
qq.Enqueue(2);
qq.Enqueue(3);
qq.Enqueue(4);
qq.Enqueue(5);
qq.Dequeue();//将排在最前面的剔除
int c =qq.Count;//统计个数
qq.Peek();//只查看,不踢出
qq.Clear();//清空集合
bool bb =qq.Contains(3);//判断是否包含这个元素
foreach (object b in qq)
{
Console.WriteLine(b);
}
Console.ReadLine();