使用ResizeArray。它是 CLI 类型List(T)的缩写,它提供您需要的功能,例如Remove。
来自 MSDN 库:
List(T) 类是 ArrayList 类的通用等价物。它使用一个数组来实现 IList(T) 泛型接口,该数组的大小根据需要动态增加。
Contains、IndexOf、LastIndexOf 和Remove等方法对列表元素使用相等比较器。类型 T 的默认相等比较器确定如下。如果类型 T 实现了 IEquatable(T) 泛型接口,则相等比较器是该接口的 Equals(T) 方法;否则,默认的相等比较器是 Object.Equals(Object)。
BinarySearch 和 Sort 等方法对列表元素使用排序比较器。类型 T 的默认比较器确定如下。如果类型 T 实现了 IComparable(T) 泛型接口,则默认比较器是该接口的 CompareTo(T) 方法;否则,如果类型 T 实现非泛型 IComparable 接口,则默认比较器是该接口的 CompareTo(Object) 方法。如果类型 T 没有实现任何接口,则没有默认比较器,并且必须显式提供比较器或比较委托。
List(T) 不能保证被排序。在执行需要对 List(T) 进行排序的操作(例如 BinarySearch)之前,您必须对 List(T) 进行排序。
可以使用整数索引访问此集合中的元素。此集合中的索引是从零开始的。
List(T) 接受空引用(在 Visual Basic 中为 Nothing)作为引用类型的有效值并允许重复元素。
中的一个例子F#
:
open System
// an integer list
let intList =
let temp = new ResizeArray<int>() in
temp.AddRange([| 1; 2; 3 |]);
temp
// print each int using the ForEach member method
intList.ForEach( fun i -> Console.WriteLine(i) )
// unpack items from the resize array
let itemOne = intList.Item(0)
let itemTwo = intList.[1]