Collections.Array2D 模块 (F#)

针对二维数组的基本操作。

命名空间/模块路径: Microsoft.FSharp.Collections

程序集:FSharp.Core(在 FSharp.Core.dll 中)

module Array2D

备注

通常,F# 和 CLI 多维数组是从零开始的。 但是,与外部库一起使用的 CLI 多维数组(例如,与 Visual Basic 关联的库)是非零起始数组,对每一维可能使用不大相同的起始数组。 此模块中的操作接受此类数组,基于此将输入数组传播到与之匹配的 Array2D.mapArray2D.mapi 操作上的输出数组。 还可以使用 Array2D.zeroCreateBasedArray2D.createBasedArray2D.initBased 创建不基于零的数组。

说明

base1 : 'T [,] -> int

获取数组的第一个维的基索引。

base2 : 'T [,] -> int

获取数组第二个维的基索引。

blit : 'T [,] -> int -> int -> 'T[,] -> int -> int -> int -> int -> unit

从第一个数组中读取一定范围的元素,并将这些元素写入第二个数组。

copy : 'T [,] -> 'T [,]

创建一个新数组,其元素与输入数组的元素相同。

create : int -> int -> 'T -> 'T [,]

创建一个其元素最初均为给定值的数组。

createBased : int -> int -> int -> int -> 'T -> 'T [,]

创建一个带基索引的数组,其元素都初始化为给定值。

get : 'T [,] -> int -> int -> 'T

从 2D 数组中获取元素。 也可以使用语法 array.[index1,index2]。

init : int -> int -> (int -> int -> 'T) -> 'T [,]

创建一个指定了维度的数组和一个生成器函数以便计算元素。

initBased : int -> int -> int -> int -> (int -> int -> 'T) -> 'T [,]

创建一个给定维度、带基索引的数组和一个计算元素的生成器函数。

iter : ('T -> unit) -> 'T [,] -> unit

将给定函数应用于数组的每个元素。

iteri : int -> int -> 'T -> unit

将给定函数应用于数组的每个元素。 传递到函数的整数索引指示元素的索引。

length1 : 'T [,] -> int

返回第一维数组的长度。

length2 : 'T [,] -> int

返回第二个维中数组的长度。

map : ('T -> 'U) -> 'T [,] -> 'U [,]

创建一个新数组,其元素是将给定函数应用于数组的每个元素的结果。

mapi : (int -> int -> 'T -> 'U) -> 'T [,] -> 'U [,]

创建一个新数组,其元素是将给定函数应用于数组的每个元素的结果。 传递到函数的整数索引指示所转换的元素。

rebase : 'T [,] -> 'T [,]

创建一个新数组,其元素与输入数组相同,但非以零开始的输入数组会生成从零开始的输出数组。

set : 'T [,] -> int -> int -> 'T -> unit

设置数组中某个元素的值。 也可以使用语法 array.[index1,index2] <- value。

zeroCreate : int -> int -> 'T [,]

创建一个数组,其元素初始化为 Unchecked.defaultof<'T>

zeroCreateBased : int -> int -> int -> int -> 'T [,]

创建一个带基索引的数组,其元素初始化为 Unchecked.defaultof<'T>

平台

Windows 7、Windows Vista SP2、Windows XP SP3、Windows XP x64 SP2、Windows Server 2008 R2、Windows Server 2008 SP2、Windows Server 2003 SP2

版本信息

F# 运行时

受以下版本支持:2.0、4.0

Silverlight

受以下版本支持:3

请参见

参考

Microsoft.FSharp.Collections 命名空间 (F#)