ArrayList集合類在System.Colletions命名空間下,它其實是一個特殊的數組,它可以動態的添加和刪除元素,根據元素的改變自動決定它自身的大小,也可以靈活的插入元素等操作,使用起來要比一般的數組方便很多個人感覺,而且可以用來儲存任何引用和值類型,如下面舉個例子:
C#:
ArrayList arr = new ArrayList();
arr.Add(123);
arr.Add(567);
arr.Add("windows");
//ArrayList的默認索引為0
//我要在索引為1的位置插入一個元素
arr.Insert("XP");
arr.Remove(567) //移除元素567
下面是ArrayList類的一些常用屬性和方法:
1.常用屬性
Count獲取數組的實際元素個數。
Item 獲取和設置指定索引處元素,這個屬性在VB.NET使用,在C#中時用[]代替。
2.常用方法
Add方法:將某一元素添加到動態數組的尾部
Remove方法:從動態數組中移除指定元素。
RemoveAt方法:從動態數組中移除指定索引處元素。
Clear方法:刪除所有元素。
IndexOf方法:在動態數組中查找某個元素的索引。
Insert方法:將元素插入指定索引處。
Reverse方法:反轉元素排序。
Sort方法:對元素進行排序。
ToArray方法:將動態數組中的所有元素復制到新數組中。
Contains方法:確定某個元素是否存在。
ArrayList雖然使用很方便靈活,但是添加給它的任何引用類型和值類型都將隱式的被轉換為Object(即裝箱操作),而在使用元素時要進行拆箱操作,否則會出現編譯錯誤的情況,這樣很麻煩,所以就有另外一個和它比較相似的類,List<T>泛型類,List<T>泛型類位於System.Colletions.Generit下,List<T>泛型比ArrayList方便之處就是它避免了重復裝箱拆箱的操作,當它聲明時將強制性的指定一個非Object類型,相對能較好的保證代碼的安全性,它的使用和ArrayList類似。
C#:
List<int> a = new List<int>();
a.Add(1);
a.Add(2);
a.Add(3);
ArrayList 類和List<T>泛型類的區別