点击或拖拽改变大小

Functions.ALen 方法 (__Array)

X#
返回数组中元素的数量。

命名空间:  XSharp.RT
程序集:  XSharp.RT (在 XSharp.RT.dll 中) 版本:2.22 GA
语法
 FUNCTION ALen(
	aTarget AS ARRAY
) AS DWORD
查看代码

参数

aTarget
类型:__Array
要计数的数组。

返回值

类型:UInt32
数组中的元素数量。
如果数组为空,ALen() 返回 0。
备注
如果数组是多维的,子数组算作一个元素。
这意味着多维数组的 ALen() 仅返回第一维的长度。
要确定其他维度中的元素数量,请对子数组使用 ALen(),如下面的示例所示。(注意,X# 中的多维数组不需要具有统一的维度。)
示例
此示例创建一个字面量二维数组,然后返回数组和包含在数组第一个元素中的子数组的元素数量:
X#
1LOCAL aArray := {{1, 2}, {1, 2}, {1, 2}}
2? ALen(aArray)                                // 3
3? ALen(aArray[1])                            // 2
此示例使用 ALen() 遍历多维数组:
X#
 1LOCAL aArray := {{1, 2}, {1, 2}, {1, 2}}
 2LOCAL nRow, nColumn AS SHORTINT
 3LOCAL nRowCount, nColumnCount AS SHORTINT
 4nRowCount = ALen(aArray)
 5FOR nRow := 1 UPTO nRowCount
 6    nColumnCount = ALen(aArray[nRow])
 7    FOR nColumn := 1 UPTO nColumnCount
 8        ? nRow, nColumn, aArray[nRow][nColumn]
 9    NEXT
10NEXT
在此示例中,函数返回一个描述多维数组维度的数值数组。
该函数假设数组具有统一的维度:
X#
1FUNCTION Dimensions(aArray)
2    LOCAL aDims := {}
3    DO WHILE IsArray(aArray)
4        AADD(aDims, ALen(aArray))
5        aArray := aArray[1]
6    ENDDO
7    RETURN (aDims)
参见