C#的ArrayList类

来源:互联网 发布:异性缘好的男生 知乎 编辑:程序博客网 时间:2024/05/22 12:06

ArrayList与Array

  • Array的大小是固定的,不能更改,而ArrayList被称为动态数组。
  • ArrayList类在System.Collections命名空间下,所以在使用时要先引入这个命名空间。
using System.Collections;
  • 而且ArrayList提供能够添加、插入、移除某一范围元素的方法。
  • 在ArrayList中,只能一次获取或者设置一个元素的值。

    ArrayList类的常用方法

    这里写图片描述
    这里写图片描述
    这里写图片描述

ArrayList类元素的添加

两种方法:Add和AddRange(range意为:范围、集合)

  • 将单个元素添加到数组的尾部
 ArrayList 对象.Add(要添加的值);
  • 将一个数组添加到ArrayList列表的尾部
 ArrayList 对象.AddRange(要添加的数组);

实例

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;//引入指定的命名空间using System.Collections;namespace Format{    class Program    {        static void Main(string[] args)        {            ArrayList al = new ArrayList(3);            //System.Collections.ArrayList al = new System.Collections.ArrayList(3);            //没有引入命名空间的情况下,也可以用这种方式使用命名空间中的类            Console.WriteLine("未添加之前al列表中元素的个数为:" + al.Count + "个");            al.Add("abc");            al.Add(10);            al.Add(50);            Console.WriteLine("添加后列表中元素的个数为:" + al.Count + "个");            string[] str = { "last1", "last2" };            al.AddRange(str);            Console.WriteLine("AddRange添加后列表中元素的个数为:" + al.Count + "个");            Console.ReadLine();        }    }}

这里写图片描述

ArrayList元素的删除

四种删除元素的方法

  • Remove方法,接受一个object类型的值(即要删除的值),并将列表中第一个符合该值的元素删除。
ArrayList 对象.Remove(要删除的值);
  • RemoveAt方法,接受一个int型的参数(要删除的值的索引),将指定索引的元素删除。
ArrayList 对象.RemoveAt(要删除的值的索引);
  • RemoveRange方法,从集合中删除一定范围的值
ArrayList 对象.RemoveRange(开始的索引,删除的个数);//索引所在的元素不会被删除,删除的是这个索引之后的n个元素
  • Clear方法,清除所有元素

ArrayList元素的遍历

与数组相同,依然是使用for和foreach两种模式

注意

  • 因为列表中的元素格式不固定,所以在输出时要统一转换为String模式,以防止出错。
al[0].toString()
  • 使用foreach时要用object类型来接受列表中的元素,object包括各种格式,不会出错
 foreach(object list in al){}

ArrayList元素的查找

与数组大致相同,有三个方法:IndexOf(要搜索的字符)、LastIndexOf(要搜索的字符)、BinarySearch(要搜索的字符)
返回值小于0,则表示该字符不存在。

1 0