ArrayList类位于System.Collections命名空间下,它可以动态的添加和删除元素。ArrayList类型相当于一种高级的动态数组,是Array的升级版,但它不等同于数组。
ArrayList功能:
ArrayList构造器
有3种构造器,通过这3中构造器可以有3种声明方式。
1、 默认的构造器:将会以默认(16)的大小来初始化内部的数组。格式如下:
public ArrayList();
通过以上构造器声明ArrayList的语法格式如下:
ArrayList List = new ArrayList();
2、用一个ICollection对象来构造,并将改集合的元素添加到ArrayList中。构造器格式如下:
public ArrayList(ICollection);
通过以上构造器声明ArrayList语法格式如下:
ArrayList list = new ArrayList(arrayName);
说明:
例:声明一个int型数组,声明一个ArrayList对象,将数组中的元素添加到ArrayList对象中
int[] arr = new int[]{1,2,3,4,5,6,7,8,9};
ArrayList list = new ArrayList(arr);
3、用指定大小的初始化内部的数组。构造器格式如下:
Arratyist List = new ArrayList(int)
通过以上构造器声明ArrayList的语法格式如下:
ArrayList List = new ArrayList(n);
说明:
例:声明一个具有10个元素的ArrayList对象,并赋初始值。
ArrayList List = new ArrayList(10);
for(int i =0;i
ArrayList常用属性及说明
属性 | 说明 |
---|---|
Capacity | 获取或设置ArrayList可包含的元素数 |
Count | 获取ArrayList中实际包含的元素数 |
IsFixedSize | 获取一个值,该值指示ArrayList是否具有固定大小 |
IsReadOnly | 获取一个值,该值指示ArrayList是否为只读 |
IsSynchronized | 获取一个值,该值指示是否同步对ArrayList的访问 |
Item | 获取或设置指定索引处的元素 |
SyncRoot | 获取可用于同步ArrayList访问的对象 |
1、Add方法:讲对象添加到ArrayList集合的结尾处,语法格式如下:
public virtual int Add(Object value)
说明:
2、Insert方法:将元素插入ArrayList集合的指定索引处,语法格式如下:
public virtual void Insert(int Index,Object value)
说明:
value:要插入的Object,该值可以为空运用。
static void Main(string[] args)
{
int[] arr = new int[]{1,2,3,4,5,6};
ArrayList List = new ArrayList(arr);
Console.WriteLine("原ArrayLis集合");
foreach(int i in List)
{
Console.Write(i +" ");
}
Console.WriteLine();
for(int i=0;i<5;i++)
{
List.Add(i + arr.Length);
}
Console.WriteLine("使用Add方法添加:");
foreach(int i in List)
{
Console.Write(i + " ");
}
Console.WriteLine();
List.Insert(6,6);
Console.WriteLine("使用Insert方法添加:")
foreach(int i in List)
{
Console.Write(i + " ");
}
Console.WriteLine();
}
运行结果为:
原ArrayList集合:
1 2 3 4 5 6
使用Add方法添加:
1 2 3 4 5 6 7 8 9 10
使用Insert方法添加:
1 2 3 4 5 6 6
1、Clear方法:从ArrayList中移除所有元素,语法格式如下:
public virtual void Clear()
例:
int[] arr= new int[]{1,2,3,4,5,6};
ArrayList List = new ArratList(arr);
List.Clear();
2、Remove方法:从ArrayList方法中移除特定对象的第一个匹配项
public virtual void Remove(Object obj)
例:
int[] arr= new int[]{1,2,3,4,5,6};
ArrayList List = new ArratList(arr);
List.Remove(3);//移除与3匹配的元素
3、RemoveAt:用来移除ArrayList指定索引处的元素
public virtual void RemoveAt(int index)
例:
int[] arr= new int[]{1,2,3,4,5,6};
ArrayList List = new ArratList(arr);
List.RemoveAt(3);//移除索引为3的元素。
4、RemoveRange方法:从ArrayList中移除一定范围的元素。
public virtual void RemoveRange(int index,int count)
说明:
例:
int[] arr= new int[]{1,2,3,4,5,6};
ArrayList List = new ArratList(arr);
List.RemoveRange(3,2);//从索引3开始删除2个元素
1、Contains方法:用来确定某元素是否在ArrayList集合中。
public virtual bool Contains(Object item)
说明:
2、IndexOf方法:用来搜索指定的Object,并返回整个ArrayList中第一个匹配项,从0开始的索引。
public virtual int IndexOf(object value)
说明:
3、LastIndexOf方法:用来搜索指定的Object,并返回整个ArrayList中最后一个匹配项,从0开始的索引。
public virtual int LastIndexOf(Object value)
说明: