可变列表
编辑教程可变列表
List <T>类表示可以通过索引访问的对象的强类型列表。
它是List类的一个可变对象。 它类似于数组,因为它可以通过索引访问,但是,与数组不同,可以调整列表大小。 因此,您不需要在声明过程中指定大小。
创建一个可变列表
列表是使用new关键字并调用列表的构造函数创建。下面的例子说明了这一点 -
(* Creating a List *)
open System.Collections.Generic
let booksList = new List<string>()
booksList.Add("Gone with the Wind")
booksList.Add("Atlas Shrugged")
booksList.Add("Fountainhead")
booksList.Add("Thornbirds")
booksList.Add("Rebecca")
booksList.Add("Narnia")
booksList |> Seq.iteri (fun index item -> printfn "%i: %s" index booksList.[index])
当你编译和执行程序,它产生以下输出
0: Gone with the Wind
1: Atlas Shrugged
2: Fountainhead
3: Thornbirds
4: Rebecca
5: Narnia
列表(T)类
列表(T)类表示可以通过索引访问的对象的强类型列表。它提供的方法来搜索,排序和操作的列表。
下表提供的属性,构造函数和列表(T)类的方法
属性
属性 | 描述 |
---|---|
Capacity | 获取或设置内部数据结构可以保持不调整元件的总数量。 |
Count | 获取包含在列表(T)的元素的数量。 |
Item | 获取或设置元素指定索引处。 |
构造函数
构造函数 | 描述 |
---|---|
List(T)() | 初始化列表(T)类为空并且具有默认初始容量的新实例。 |
List(T)(IEnumerable(T)) | 初始化包含从指定集合复制的元素,并具有足够的容量来容纳复制的元素的数量的列表(T)的类的新实例。 |
List(T)(Int32) | 初始化列表(T)类为空并且具有指定的初始容量的新实例。 |
方法
方法 | 描述 |
---|---|
Add | 将对象添加到列表(T)的结束。 |
AddRange | 将指定集合中的元素的列表(T)的结束。 |
AsReadOnly | 返回当前集合的只读IList的(T)包装。 |
BinarySearch(T) | 对于搜索使用默认的比较的元素,整个排序列表(T),并返回该元素的从零开始的索引。 |
BinarySearch(T, IComparer(T)) | 搜索使用指定的比较的元素,整个排序列表(T),并返回该元素的从零开始的索引。 |
BinarySearch(Int32, Int32, T, IComparer(T)) | 搜索范围在使用指定的比较的元素排序列表(T)的元素,并返回该元素的从零开始的索引。 |
Clear | 从列表中删除(T)的所有元素。 |
Contains | 确定一个元素是否是列表(T)。 |
ConvertAll(TOutput) | 在当前列表(T)为另一种类型的元素转换,并返回包含转换元素的列表。 |
CopyTo(T[]) | 将整个列表(T)到兼容的一维数组,从目标数组的开头。 |
CopyTo(T[], Int32) | 将整个列表(T)到兼容的一维数组,从目标数组的指定索引处。 |
CopyTo(Int32, T[], Int32, Int32) | 复制一定范围内从List(T)的元素到兼容的一维数组,从目标数组的指定索引处的。 |
Equals(Object) | 确定指定的对象是否等于当前对象。 (从Object继承。) |
Exists | 判定列表(T)是否包含匹配指定的谓词所定义的条件的元素。 |
Finalize | 允许一个对象尝试释放资源并之前它是由垃圾收集(从Object继承)回收执行其他清理操作。 |
Find | 搜索匹配由指定谓词所定义的条件,并返回整个列表(T)中第一次出现的元件。 |
FindAll | 检索所有匹配指定的谓词所定义的条件的元素。 |
FindIndex(Predicate(T)) | 搜索匹配由指定谓词定义的条件,并返回整个List(T)中第一次出现的从零开始的索引的元素。 |
FindIndex(Int32, Predicate(T)) | 搜索匹配由指定谓词所定义的条件,并在列表(T)的元素的范围内返回第一个出现的从零开始的索引,从指定索引到最后一个元素延伸的元素。 |
FindIndex(Int32, Int32, Predicate(T)) | 搜索匹配由指定谓词所定义的条件,并在列表(T)的元素范围内返回第一个出现的从零开始的索引启动指定索引处,并包含指定元素数量的元素。 |
FindLast | 搜索匹配由指定谓词所定义的条件,并返回整个列表(T)内的最后出现的元件。 |
FindLastIndex(Predicate(T)) | 搜索匹配由指定谓词定义的条件,并返回整个List(T)内的最后一个匹配的从零开始的索引的元素。 |
FindLastIndex(Int32, Predicate(T)) | 搜索匹配由指定谓词所定义的条件,并在列表(T)的元素的范围内返回最后出现的从零开始的索引,从第一个元素到指定索引扩展的元素。 |
FindLastIndex(Int32, Int32, Predicate(T)) | 搜索匹配由指定谓词所定义的条件,并在列表(T)的元素范围内返回最后出现的从零开始的索引,它包含的元素指定数量的指定索引结束的元素。 |
ForEach | 执行列表(T)的每个元素上指定的操作。 |
GetEnumerator | 返回的枚举列表(T)进行迭代。 |
GetHashCode | 作为默认哈希函数。 (从Object继承。) |
GetRange | 创建一个范围在源列表(T)的元素的浅表副本。 |
GetType | 获取当前实例的类型。 (从Object继承。) |
IndexOf(T) | 搜索指定的对象,并返回整个List(T)中第一次出现的从零开始的索引。 |
IndexOf(T, Int32) | 搜索指定的对象,并返回从指定索引到最后一个元素扩展了名单(T)的元素范围内第一次出现的从零开始的索引。 |
IndexOf(T, Int32, Int32) | 搜索指定的对象,并返回启动指定索引处和包含的元素指定数量的列表(T)的元素范围内第一次出现的从零开始的索引。 |
Insert | 插入一个元素指定索引处的列表(T)。 |
InsertRange | 插入集合的指定索引处的元素融入到列表(T)。 |
LastIndexOf(T) | 搜索指定的对象,并返回整个List(T)内的最后一个匹配的从零开始的索引。 |
LastIndexOf(T, Int32) | 搜索指定的对象,并返回,从第一个元素到指定索引扩展了名单(T)的元素范围内最后一次出现的从零开始的索引。 |
LastIndexOf(T, Int32, Int32) | 搜索指定的对象,并返回一个包含元素的指定数量的指定索引处结束的名单(T)的元素范围内最后一次出现的从零开始的索引。 |
MemberwiseClone | 创建当前Object的浅表副本。 (从Object继承。) |
Remove | 从列表中删除(T)特定对象的第一次出现。 |
RemoveAll | 删除所有匹配指定的谓词所定义的条件的元素。 |
RemoveAt | 删除列表(T)的指定索引处的元素。 |
RemoveRange | 删除一个范围从List(T)的元素。 |
Reverse() | 反转在整个列表(T)中的元素的顺序。 |
Reverse(Int32, Int32) | 反转指定范围中的元素的顺序。 |
Sort() | 在排序使用默认的比较整个List(T)的元素。 |
Sort(Comparison(T)) | 用指定的系统,在整个列表(T)的元素。比较(T)。 |
Sort(IComparer(T)) | 用指定的比较器在整个List(T)的元素。 |
Sort(Int32, Int32, IComparer(T)) | 在排序范围列表中使用指定的比较单元(T)的元素。 |
ToArray | 复制名单(T)的一个新的数组中的元素。 |
ToString | 返回表示当前对象的字符串。 (从Object继承。) |
TrimExcess | 设置的能力的列表(T)的元件的实际数量,如果该数量小于一个阈值。 |
TrueForAll | 确定列表(T)的每个元素是否在指定的谓词所定义的条件相匹配。 |
例
(* Creating a List *)
open System.Collections.Generic
let booksList = new List<string>()
booksList.Add("Gone with the Wind")
booksList.Add("Atlas Shrugged")
booksList.Add("Fountainhead")
booksList.Add("Thornbirds")
booksList.Add("Rebecca")
booksList.Add("Narnia")
printfn"Total %d books" booksList.Count
booksList |> Seq.iteri (fun index item -> printfn "%i: %s" index booksList.[index])
booksList.Insert(2, "Roots")
printfn("after inserting at index 2")
printfn"Total %d books" booksList.Count
booksList |> Seq.iteri (fun index item -> printfn "%i: %s" index booksList.[index])
booksList.RemoveAt(3)
printfn("after removing from index 3")
printfn"Total %d books" booksList.Count
booksList |> Seq.iteri (fun index item -> printfn "%i: %s" index booksList.[index])
当你编译和执行程序,它产生以下输出
Total 6 books
0: Gone with the Wind
1: Atlas Shrugged
2: Fountainhead
3: Thornbirds
4: Rebecca
5: Narnia
after inserting at index 2
Total 7 books
0: Gone with the Wind
1: Atlas Shrugged
2: Roots
3: Fountainhead
4: Thornbirds
5: Rebecca
6: Narnia
after removing from index 3
Total 6 books
0: Gone with the Wind
1: Atlas Shrugged
2: Roots
3: Thornbirds
4: Rebecca
5: Narnia
Mos固件,小电视必刷固件
ES6 教程
Vue.js 教程
JSON 教程
jQuery 教程
HTML 教程
HTML 5 教程
CSS 教程
CSS3 教程
JavaScript 教程
DHTML 教程
JSON在线格式化工具
JS在线运行
JSON解析格式化
jsfiddle中国国内版本
JS代码在线运行
PHP代码在线运行
Java代码在线运行
C语言代码在线运行
C++代码在线运行
Python代码在线运行
Go语言代码在线运行
C#代码在线运行
JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。
大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
选择支付方式:
立即支付
¥
9.99
无法付款,请点击这里
金额: 0 元
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟