//集合
            //System.Collections 命名空间包含接口和类,这些接口和类定义的对象(如列表,队列,位数组,哈希表和字典等)集合
            //常用的集合为ArrayList类,特殊集合一般用到 Queue,Stack,Hashtable集合
            //集合与数组的区别
            //1、集合不同于数组,是一组可变数量的元素组合。
            //   这些元素可能共享某些特征,需要某种操作方式一起操作。
            //   一般来说,这些元素的类型是相同的
            //2、数组是连续的、同一类型数据的一块区域,而集合可以是不连续的、多种数据类型的
            //一  ArrayList 集合
            //需要在using System.Collections
            //.count           获取ArrayList中包含的元素数
            //.Add()           将对象添加到ArrayList的结尾处
            //.Clear()         从ArrayList中移除所有元素
            //.clone()         创建ArrayListzhong 的浅表副本
            //.contains()      确定某元素是否在ArrayList中
            //.IndexOf()       已重载,返回ArrayList或它的一部分中某个值得第一个匹配项的从零开始的索引
            //.Insert()        将元素插入ArrayList 的指定索引处,可在任意位置插入
            //.LastIndexOf()   返回ArrayList或它的一部分某个值的最后一个匹配项从零开始的索引
            //.Remove()        从ArrayList 中移除特定对象的第一个匹配项
            //.RemoveAt()      移除ArrayList de 指定索引处的元素
            //.Sort()          对ArrayList或它的一部分进行排序,升序
            //.Revers()        翻转整个集合,一般是针对.sort的,降序
            //定义一个集合,集合是一个类,需要引用using System.Collections
            ArrayList al = new ArrayList();//初始化集合al
            //给数组加入元素
            al.Add(1);
            al.Add(2);
            al.Add(3);
            int j = al.Add(2);//加入一个2的元素,并把元素2的索引号复制给j
            al.Add(4);
            int i = al.Add(3);//加入一个3的元素,并把元素3的索引号复制给i
            //al.Remove(3);//移除第一个3的元素
            //al.RemoveAt(2);//移除索引号2的值
            //打印索引号 int x=al.add(y)  x是复制al.add(y)的索引号
            //Console.WriteLine(i);
            //Console.WriteLine(j);
            //foreach (int a in al)
            //{
            //    Console.WriteLine(a);
            //}
            //集合里面的个数
            int n = al.Count;
            Console.WriteLine(n);
            
            //清空集合中的所有数据
            //al.Clear();
            //foreach (int a in al)
            //{
            //    Console.WriteLine(a);
            //}
            //查看集合中第一个数出现的索引 indexof()  最后一个索引lastindexof
            int sy = al.IndexOf(3);
            Console.WriteLine(sy);
            int sy2 = al.LastIndexOf(3);
            Console.WriteLine(sy2);
            //创建新的集合,并将之前集合的数据复制到新的集合,并判断集合中是否含有某个数据
            ArrayList xal = new ArrayList();
            xal = (ArrayList)al.Clone();
            bool s = xal.Contains(2);
            Console.WriteLine(s);
Console.ReadLine();
原文:http://www.cnblogs.com/fengsantianya/p/5483705.html