我可以将数组初始化为一系列值吗?

Can I initialize an array to a range of values?

使用 ColdFusion,有什么简单的方法可以用一定范围的数字初始化数组吗?

我知道我可以循环:

testArray = [];
    for(i=345;i<645;i++){
        ArrayAppend(testArray,i);
    }

是否有任何隐式方法来初始化数组并用一系列数字填充它?

据我所知,唯一内置的方法是arrayset,它只允许你使用one 值,而不是范围。所以我会说答案是否定的。也许您可以通过达到 Java 级别来绕过它,但是没有任何东西可以作为 'built in' CF func。

Ray 已经回答,但只是为了好玩:

<cfscript>

testArray  = createObject("java", "org.apache.commons.lang.math.IntRange")
                 .init(345,645).toArray();

writeOutput(testArray[1] & "<br>");

writeOutput(arrayLen(testArray) & "<br>");

writeOutput(arrayToList(testArray));

</cfscript>

运行 我:http://www.trycf.com/scratch-pad/pastebin?id=gCG7EASp

注意 testArray 实际上是一个 int[] 数组。虽然 CF 足够聪明,可以使用它,但某些数组函数(如 arrayAppend() 期望 java.util.Vector 会失败。

我很惊讶不需要 javacast("int", 345)