C#中的ArrayList类

来源:互联网 发布:修改默认ssh端口 编辑:程序博客网 时间:2024/06/14 17:15

1、别名:动态数组、集合

2、声明之前需要引用命名空间:using System.Collections

       声明时可指定长度,也可不指定: ArrayList myList = new ArrayList();

                                                                    ArrayList myList = new ArrayList(100);

3、包含四种种添加方法,分别是:

              Add(参数); ----  每次只能添加一个元素,可以是任意类型。

              AddRange(参数) ----添加一个范围内的对象,比如说数组。

  以上两种方法,都只能添加到ArrayList的末尾,如果想在指定位置插入某个值可以用

    Insert(参数1,参数2);  ---参数1代表索引号,参数2代表要插入的值   用于插入单个值

    InsertRange(参数1,参数2);  ---参数1代表索引号,参数2代表要插入的值   用于插入一个范围类的对象,比如数组


4、删除方法:

     Remove(值)、RemoveAt(索引号)

     RemoveRange(起始索引号,删除的个数)

                  Clear()   -----清空所有元素


5、查找方法:(查找不到均返回-1)

                 IndexOf(值)     返回该值首次出现的索引号

                 LastIndexOf(值)    返回该值最后一次出现的索引号

                 BinarySearch(值)   返回该值首次出现的索引号  , 要注意的是:如果ArrayList中有不同类型的元素时,用此方法会报错。  

          因为它会将值自动转换为二进制


6、在利用foreach遍历ArrayList时,如果存在多种类型的元素,可选用Object类声明,因为它是所有类的基类

                   foreach(Object obj in myList)

                   {

                              Console.WritLine(obj);

                  }


using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Collections;namespace ArrayList演示{    class Program    {        static void Main(string[] args)        {            ArrayList myList = new ArrayList();            myList.Add(10);            myList.Add('我');            myList.Add("集合");            myList.Add(50.5);            myList.Insert(0,"小明");            string[] str = {"张三","李四","王五","赵六"};            // AddRange() 可用于一次添加多个元素,可以直接添加数组!            myList.AddRange(str);            //myList.AddRange();            Console.WriteLine("删除前共有{0}个元素", myList.Count);            foreach (object obj in myList)            {                            Console.Write(obj + "\t");            }            //RemoveRange(索引,删除的个数)、Remove(值)、RemoveAt(索引值)            myList.RemoveRange(4,3);            Console.WriteLine("\n删除后共有{0}个元素", myList.Count);            foreach (object obj in myList)            {                Console.Write(obj + "\t");            }            //Clear() 清空所有元素            myList.Clear();            Console.WriteLine("\n清空后共有{0}个元素", myList.Count);            foreach (object obj in myList)            {                Console.Write(obj + "\t");            }            Console.ReadKey();        }    }}


0 0
原创粉丝点击