2015-02-26 73 views
1

使用ColdFusion,有没有简单的方法来初始化一个数组范围的数组?我可以初始化一个数组到一个范围值吗?

我知道我可以循环:

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

有没有初始化数组,并用一系列数字来填充它任何含蓄的方式?

+0

如果您有任何方式要使用值范围,为什么您需要将值存储在数组中? – Pankaj

+0

@Pankaj - http://stackoverflow.com/questions/28740376/how-can-i-split-a-range-of-values-among-a-pool-of-threads :) – froadie

回答

3

据我所知建于方法来初始化数据数组的唯一是arrayset,并且只允许您使用一个值,而不是一个范围。所以我会说答案是否定的。也许你可以通过达到Java级别来解决它,但是没有任何东西可以作为内置的CF函数。

+0

唉。谢谢。 – froadie

2

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

<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> 

RUN ME:http://www.trycf.com/scratch-pad/pastebin?id=gCG7EASp

注意testArray真是一个int[]阵列。虽然CF足够聪明,但可以使用它,但某些阵列功能如arrayAppend()预计java.util.Vector将会失败。

我很惊讶没有javacast("int", 345)是必要的。

相关问题