9
A
回答
4
沒有預定義的函數可以滿足你的要求,但是很容易實現你自己的函數。我提供的功能非常簡單並且易於擴展。
variables.myList = "one,two,three";
variables.myList = ListAppendDistinct(variables.myList, "three");
variables.myList = ListAppendDistinct(variables.myList, "four");
function ListAppendDistinct(list, value)
{
var _local = StructNew();
_local.list = list;
if (NOT ListContains(_local.list, value))
{
_local.list = ListAppend(_local.list,value);
}
return _local.list;
}
可以使用功能上面清楚地追加到數組,這一切都假定你正在使用默認的分隔符。我不確定數據的「大小」,因爲它可能會變得昂貴。
variables.myArray = ArrayNew(1);
variables.myArray[1] = "one";
variables.myArray[2] = "two";
variables.myArray[3] = "three";
variables.myArray = ArrayAppendDistinct(variables.myArray, "three");
variables.myArray = ArrayAppendDistinct(variables.myArray, "four");
function ArrayAppendDistinct(array, value)
{
var _local = StructNew();
_local.list = ArrayToList(array);
_local.list = ListAppendDistinct(_local.list,value);
return ListToArray(_local.list);
}
9
<cfset temp = structNew()>
<cfloop list="a,b,c,a,c" index="i">
<cfset temp[i] = "">
</cfloop>
<cfset distinctList = structKeyList(temp)>
這是我能想到的最簡單的解決方案。這個缺點是沒有保存順序,列表項不區分大小寫。如果您需要不區分大小寫,請使用Java的哈希集。
7
在添加值之前,請使用arrayContains或listFindNoCase檢查它是否存在。
4
可以在CF 10或Railo 4使用Underscore.cfc library:
_ = new Underscore();// instantiate the library
uniqueArray = _.uniq(array);// convert an array to a unique array
我不認爲它會比這更簡單!
(聲明:我寫Underscore.cfc)
相關問題
- 1. 列表列表清單列表清單
- 2. Python - 列表清單清單列表
- 3. Java列表清單列表
- 4. 列表清單列表
- 5. csv列表清單?
- 6. Linq列表清單
- 7. GSON列表清單
- 8. C#列表清單?
- 9. OCaml:列表清單
- 10. Ada - 列表清單
- 11. Linq清單列表到單個列表
- 12. 將清單切入清單列表
- 13. 列表清單列表:如何根據用戶輸入列出清單列表?
- 14. 將計劃轉換爲OCaml? ('列表vs'列表清單 - >'列表清單)
- 15. 清單列表(串)(列表(串))的
- 16. 將列表轉換爲列表清單
- 17. Nice Backbone.js列表清單列表
- 18. Coldfusion表單功能
- 19. Python複製列表清單
- 20. 清單列表視圖
- 21. Django bulk_create列表清單
- 22. 轉置列表清單
- 23. 元組的列表清單
- 24. BIRT報告列表清單
- 25. C#清單列表 - 排序
- 26. 展開列表清單
- 27. 訪問列表清單
- 28. 序言:列表清單
- 29. Android創建列表清單
- 30. 構成列表清單
+1創意 – 2011-03-08 04:42:52
@Henry:赫然留下深刻的印象。你爲我節省了很多時間 – 2013-09-11 14:49:35