4

我有一个二维数组:

ProductAndCompanyHourArray[ProductLoopIndex][CompanyLoopIndex] = getCompanyHourTime;

到目前为止,我正在尝试遍历每个维度的二维数组:

ArrayLen(ProductAndCompanyHourArray) - ProductIndex

我将如何循环第二位?(不工作并获得长度)

ArrayLen(ProductAndCompanyHourArray[ProductIndex]) ??
4

2 回答 2

4

要获取第二维的数组长度,只需使用ArrayLen函数:

<cfset DD = [[1,2,3],[4,5,6,7],[8,9],[10]] />

<cfoutput><pre>
DD Length is #ArrayLen(DD)#

<cfloop index="i" from=1 to=#ArrayLen(DD)#>
    DD[#i#] Length is #ArrayLen(DD[i])#
</cfloop>

</pre></cfoutput>

该代码有效。如果您没有,请提供完整的相关代码和任何错误消息。

于 2012-08-01T15:15:54.750 回答
3

响应使用冷融合:

关于 ColdFusion 阵列 ColdFusion 阵列与传统阵列不同,因为它们是动态的。例如,在传统数组中,数组大小是恒定且对称的,而在 ColdFusion 数组中,您可以根据添加或删除的数据拥有不同长度的行。传统的二维数组就像一个由单个单元格组成的固定大小的表格。ColdFusion 2D 数组实际上是一个包含一系列附加 1D 数组的一维数组。组成一行的每个数组都可以独立于任何其他列扩展和收缩。

我将链接到类似问题的答案,应该可以解决您的问题。

https://stackoverflow.com/a/4111400/967977

该链接指出 “您可以将任何二维数组的长度设为 z[n].length,其中 0 <= n < z.length。”

于 2012-08-01T14:43:47.367 回答