获取第二维的数组长度

时间:2012-08-01 14:41:34

标签: arrays coldfusion

我有一个二维数组:

ProductAndCompanyHourArray[ProductLoopIndex][CompanyLoopIndex] = getCompanyHourTime;

到目前为止,我正在尝试循环每个维度的2d数组:

ArrayLen(ProductAndCompanyHourArray) - ProductIndex

我如何循环第二位? (不工作和得到长度)

ArrayLen(ProductAndCompanyHourArray[ProductIndex]) ??

2 个答案:

答案 0 :(得分: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>

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

答案 1 :(得分:3)

回应使用Cold Fusion:

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

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

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

链接说明 “你可以得到任何第二维数组的长度为z [n] .length,其中0 <= n&lt; z.length。”