c# 集合ArrayList

ArrayList

很多数据的集合

创建: 

class Program
{
    static void Main(string[] args)
    {
        //ArrayList这个类是在System.Collections命名空间下 ,所以需要using 导入
        ArrayList list = new ArrayList();
        int[] arr = { 1, 2, 3 };
        list.Add(1);
        list.Add(1.23);
        list.Add(true);
        list.Add(arr);
        list.Add(list);
        for (int i = 0; i < list.Count; i ++)
        {
            Console.WriteLine(list[i]);
        }
        Console.Read();
    }
}

 打印结果:

注意:

(1)我们将一个对象输出到控制台,默认情况下,打印的就是这个对象所在类的命名空间,与显示调用ToString()方法,输出的结果一样。

ArrayList 的方法:

1、list.Add(Object value) 

:参数是一个对象,根据里氏转换,即放什么类型的参数都可以, 通常添加单个元素;

2、list.Count

:列表中实际包含的元素个数

3、list.AddRange()

:通常向ArrayList添加一个数组或者集合;

对比Add,使用AddRange添加的数组,当我们输出集合中的每个元素时,数组元素将会被输出。

class Program
{
    static void Main(string[] args)
    {
        //ArrayList这个类是在System.Collections命名空间下 ,所以需要using 导入
        ArrayList list = new ArrayList();
        int[] arr = { 1, 2, 3 };
        list.AddRange(arr);
        for (int i = 0; i < list.Count; i ++)
        {
            Console.WriteLine(list[i]); // 1  2  3
        }
        Console.Read();
    }
}

4、list.Clear( ) 清除所有元素;

5、list.Remove( ) 指定删除单个元素(参数可为任意类型)

class Program
{
    static void Main(string[] args)
    {
        //ArrayList这个类是在System.Collections命名空间下 ,所以需要using 导入
        ArrayList list = new ArrayList();
        list.Add(1);
        list.Add(true);
        list.Remove(true);
        for (int i = 0; i < list.Count; i ++)
        {
            Console.WriteLine(list[i]); // 1
        }
        Console.Read();
    }
}

6、list.RemoveAt ( int index )

根据列表索引,删除元素;

7、list.RemoveRange( int index, int Count )

从指定索引开始删除元素,参数二为要删除元素的个数;

8、list.Sort (  )

升序排列

9、list.Reverse ( )

反转

10、list.Insert(int index,Object value

在指定的索引处,插入任何类型的元素

11、list.InsertRange(int index, list

在指定索引处,插入一个集合或数组

12、list.Contains( object value ) 

判断集合中是否包含此参数

ArrayList 的优点:

(1)长度可以任意改变;

(2)类型不是固定的;

ArrayList 的长度问题:

(1)每次集合中实际包含的元素个数(Count),超过了可以包含的元素个数(Capacity)的时候,集合就会向内存中申请多开辟一倍的空间,来保证集合的长度一直够用。

class Program
{
    static void Main(string[] args)
    {
        //ArrayList这个类是在System.Collections命名空间下 ,所以需要using 导入
        ArrayList list = new ArrayList();
        list.Add(1);
        list.Add(true);

        Console.WriteLine($"{list.Count}, {list.Capacity}"); // 1
        Console.Read();
    }
}

猜你喜欢

转载自blog.csdn.net/qq_42778001/article/details/109001732