【发布时间】:2015-12-05 12:54:48
【问题描述】:
我正在使用 Coldfusion 10,但我对任何版本的答案都感兴趣。
众所周知,Coldfusion 中的结构是无序的(例如 Stop ColdFusion from sorting my structs/arrays),您不应依赖任何特定的迭代顺序。但是,键显然是按 some 顺序迭代的,即使它不是排序顺序或插入顺序。订单稳定可靠吗?是某种底层 Java 类型的顺序吗?
我要强调的是,我不打算依赖这个,但我还是想知道。
【问题讨论】:
-
CF 结构曾经被实现为 java.util.Hashtable 的,但现在是一个内部/专有类 Coldfusion.util.CaseInsensitiveMap。我的猜测是它是相似的,并且订单基于hash value, as with your typical HashMap/Hashtable。我认为这些信息对您没有任何用处,除了智力练习;-) 如果您真的 需要“排序”结构,请使用可用的 java 类之一。在大多数方面,它们的行为就像一个 CF 结构。