C# ArrayList類
它表示可單獨被索引的對象的有序集合。它基本上是一種替代數組。但是不像數組,可以在指定位置添加和刪除利用指數從列表中的項目,並且數組能自動調整本身大小。它也允許動態存儲器分配,添加,搜索和排序列表中的項目。
ArrayList類的方法和屬性
下表列出了一些ArrayList類的常用屬性:
屬性 | 描述 |
---|---|
Capacity | 獲取或設置ArrayList可以包含的元素數量 |
Count | 獲取實際ArrayList中包含的元素數量 |
IsFixedSize | 獲取一個用以指示ArrayList是否具有固定大小 |
IsReadOnly | 獲取一個值,指示ArrayList是否為隻讀 |
Item | 獲取或設置指定索引處的元素 |
下表列出了一些ArrayList類的常用方法:
S.N | 方法名稱及用途 |
---|---|
1 |
public virtual int Add( object value ); 將對象添加到ArrayList的末尾 |
2 |
public virtual void AddRange( ICollection c ); 增加一個元素ICollection到ArrayList的末尾 |
3 |
public virtual void Clear(); 將刪除ArrayList中的所有元素 |
4 |
public virtual bool Contains( object item ); 確定一個元素是否在ArrayList中 |
5 |
public virtual ArrayList GetRange( int index, int count ); 返回一個ArrayList,它表示在源 ArrayList 中的元素的子集 |
6 |
public virtual int IndexOf(object); 返回ArrayList中或它的一部分值,第一次出現的從零開始的索引 |
7 |
public virtual void Insert( int index, object value ); 將元素插入到ArrayList 指定索引處 |
8 |
public virtual void InsertRange( int index, ICollection c ); 插入一個集合的元素融入到 ArrayList 中的指定索引處 |
9 |
public virtual void Remove( object obj ); 將刪除ArrayList中特定第一次出現的對象 |
10 |
public virtual void RemoveAt( int index ); 刪除 ArrayList 指定索引處的元素 |
11 |
public virtual void RemoveRange( int index, int count ); 刪除ArrayList中某一範圍的元素 |
12 |
public virtual void Reverse(); 反轉 ArrayList 元素的順序 |
13 |
public virtual void SetRange( int index, ICollection c ); 副本的集合的在一定範圍內,在ArrayList中的元素的元素 |
14 |
public virtual void Sort(); 排序ArrayList中的元素 |
15 |
public virtual void TrimToSize(); 設置ArrayList中元素的實際數量 |
例子:
下麵的例子演示了這一概念:
using System; using System.Collections; namespace CollectionApplication { class Program { static void Main(string[] args) { ArrayList al = new ArrayList(); Console.WriteLine("Adding some numbers:"); al.Add(45); al.Add(78); al.Add(33); al.Add(56); al.Add(12); al.Add(23); al.Add(9); Console.WriteLine("Capacity: {0} ", al.Capacity); Console.WriteLine("Count: {0}", al.Count); Console.Write("Content: "); foreach (int i in al) { Console.Write(i + " "); } Console.WriteLine(); Console.Write("Sorted Content: "); al.Sort(); foreach (int i in al) { Console.Write(i + " "); } Console.WriteLine(); Console.ReadKey(); } } }
讓我們編譯和運行上麵的程序,這將產生以下結果:
Adding some numbers: Capacity: 8 Count: 7 Content: 45 78 33 56 12 23 9 Content: 9 12 23 33 45 56 78