C# - ArrayList 类
ArrayList 表示一个可单独索引的有序对象集合。它是数组的替代方法。然而,与数组不同的是,您可以使用索引在指定位置添加和删除列表中的项目,并且数组会自动调整大小。它还允许动态内存分配,并允许在列表中添加、搜索和排序项目。
ArrayList 类的属性
下表列出了 ArrayList 类的一些常用属性 -
| 序号 | 属性 &说明 |
|---|---|
| 1 | Capacity 获取或设置 ArrayList 可包含的元素数量。 |
| 2 | Count 获取 ArrayList 中实际包含的元素数量。 |
| 3 | IsFixedSize 获取一个值,指示 ArrayList 是否具有固定大小。 |
| 4 | IsReadOnly 获取指示 ArrayList 是否为只读的值。 |
| 5 | Item 获取或设置指定索引处的元素。 |
ArrayList 类的方法
下表列出了 ArrayList 类的一些常用方法 -
| Sr.No. | 方法和说明 |
|---|---|
| 1 | Add(object value)
将一个对象添加到 ArrayList 的末尾。 |
| 2 | AddRange(ICollection c)
将 ICollection 的元素添加到 ArrayList 的末尾。 |
| 3 | BinarySearch(Object)
使用默认比较器在整个已排序的 ArrayList 中搜索元素。 |
| 4 | public virtual void Clear()
从 ArrayList 中删除所有元素。 |
| 5 | Clone();
创建 ArrayList 的浅拷贝。 |
| 6 | Contains(object item)
判断元素是否在 ArrayList 中。 |
| 7 | CopyTo(Array)
将整个 ArrayList 复制到一个兼容的一维数组,从目标数组的开头开始。 |
| 8 | IndexOf(object)
返回 ArrayList 或其部分中某个值首次出现的从零开始的索引。 |
| 9 | Insert(int index, object value)
将元素插入到 ArrayList 的指定索引处。 |
10 | GetRange(int index, int count)
返回一个 ArrayList,该 ArrayList 表示源 ArrayList 中元素的子集。 |
| 11 | Remove(object obj)
从 ArrayList 中删除指定对象的第一个匹配项。 |
| 12 | RemoveAt(int index)
删除 ArrayList 中指定索引处的元素。 |
| 13 | RemoveRange(int index, int count)
从 ArrayList 中删除一定范围内的元素。 |
| 14 | Reverse()
反转ArrayList。 |
| 15 | Sort()
对 ArrayList 中的元素进行排序。 |
| 16 | FixedSize(ArrayList)
返回一个具有固定大小的 ArrayList 包装器。 |
| 17 | Synchronized(ArrayList)
返回一个同步(线程安全)的 ArrayList 包装器。 |
| 18 | ToArray()
将 ArrayList 的元素复制到一个新的对象数组。 |
| 19 | TrimToSize()
将容量设置为数组中元素的实际数量ArrayList。 |
20 | ReadOnly(ArrayList)
返回一个只读的 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

csharp_collections.html