如何反转数组
回答
你可以在阵列上循环反向
<cfloop index="i" from="#arrayLen(myArray)#" to="1" step="-1">
<cfoutput>#myArray[i]#</cfoutput>
</cfloop>
我认为你需要使用Java方法真正扭转阵列。
<cfscript>
// and for those who use cfscript:
for (var i = arrayLen(myArray); i >= 1; i--) {
writeOutput(myArray[i]);
}
</cfscript>
如果你所做的只是输出值,像这样向后循环通过数组是你需要的 –
java方法是如果您可以在您的主机上访问java,也可以快速简单地进行操作:
哦,但有一个ArraySort方法!
ArraySort(array, sort_type [, sort_order]);
返回boolean值。
array
通过参考更新。
sort_type
可以numeric
,text
或textnocase
sort_order
可以asc
或desc
<cfscript>
test = [ "c", "d", "a", "b" ];
arraySort(test, 'textnocase');
test is now:
[ "a", "b", "c", "d" ]
</cfscript>
退房的文档在这里:
https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-a-b/arraysort.html
我知道他说arraySort,但他问如何反转数组,而不是排序它。好的解决方案,如果原始数组排序,否则它将无法工作。 –
尽管这个人不需要它,[java.util.Collections](http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Collections.html#reverse%28java.util .List%29)对倒车效果很好 – Leigh
<cfscript>
test = [ "a", "b", "c", "d" ];
writeDump(listToArray(reverse(arrayToList(test))));
</cfscript>
会做的伎俩。
我写了这个函数来反转一个数组。它修改数组并返回它。
function init(required array arr) {
var arrLen = arrayLen(arr);
for (var i = 1; i <= (arrLen/2); i++) {
var swap = arr[arrLen + 1 - i];
arr[arrLen + 1 - i] = arr[i];
arr[i] = swap;
}
return arr;
}
我测试过它,它适用于字符串数组,以及对象等
writeOutput(arrayReverse(['a','b','c'])); // => ['c', 'b', 'a']
var a = ['apple', 'ball', 'cat', 'dog'];
arrayReverse(a);
writeOutput(a); // => ['dog', 'cat', 'ball', 'apple']
我把它变成它自己的组件,因此它更容易使用的不同项目。
FYI阵列CF只是一个ArrayList,所以......
arr = [1,2,3];
createObject("java", "java.util.Collections").reverse(arr);
writeDump(arr); // arr becomes [3,2,1]
而且我也不会理会,因为数组是由值CF传递(直到CF2016的this.passArraybyReference
)写arrayReverse()
所以它是超级低效。
- 1. 如何反转数组?
- 2. 如何反转Int数组?
- 3. 反转数组?
- 4. 如何反转这个整数数组?
- 5. 如何反转字符数组
- 6. 如何反转数组的元素?
- 7. 如何转换JSON数组反对
- 8. 如何反转这个数组?
- 9. c# - 如何反转二维数组
- 10. VBA:反转数组?
- 11. 垂直反转2d数组?
- 12. 在C中反转数组?
- 13. Javascript的数组反转
- 14. 反转字符数组
- 15. 反转一维数组--PYTHON
- 16. 反转元组参数
- 17. 在C++中反转数组
- 18. 复制和反转数组?
- 19. numpy中的反转数组?
- 20. JavaScript递归,反转数组
- 21. 反转字符数组
- 22. 数组的特殊反转
- 23. 如何反转并转发Python中的NumPy 2D数组?
- 24. 如何从提示符|中反转名称字符串到数组反转
- 25. 如何反转stringify函数?
- 26. 在组件中反转数组(masm)
- 27. 如何反转?
- 28. Java - 如何反转并将数字按位分割成数组?
- 29. 如何在数据并行中反转并行数组Haskell
- 30. 如何使用另一个数组反转一个数组中的整数?
CFLib来拯救!有人已经写了一个'arrayReverse'函数:http://www.cflib.org/udf/ArrayReverse – ale