【发布时间】:2010-07-16 13:42:25
【问题描述】:
在选择 b/n Array 和 Arraycollection 时,我很困惑为什么我要使用其中一个,为什么不使用另一个。 我已经阅读了 langref 中的理论,但除此之外,您从自己的经验中学到了一种相对于另一种的一般优势/劣势。
提前致谢。
【问题讨论】:
标签: apache-flex actionscript-3 actionscript flex3
在选择 b/n Array 和 Arraycollection 时,我很困惑为什么我要使用其中一个,为什么不使用另一个。 我已经阅读了 langref 中的理论,但除此之外,您从自己的经验中学到了一种相对于另一种的一般优势/劣势。
提前致谢。
【问题讨论】:
标签: apache-flex actionscript-3 actionscript flex3
ArrayCollection 是 Array 的包装器。它提供排序和过滤功能,可用于显示目的而不会影响基础数据。
通过使用集合类,还可以轻松地在数据格式之间切换,例如切换到 XMLListCollection,而无需重新编写所有排序和过滤代码。 [至少在理论上]。
【讨论】:
作为一个简化的经验法则,在 Flex 3 中,使用 Array 作为只读数据提供者,使用 ArrayCollection 作为可以在运行时修改的数据提供者。
在 Flex 4 Spark 中,List 或 DataGroup 等数据急切组件期望数据提供者的类型为 IList,因此在任何情况下都不再需要为数据提供者提供 Array 类型的集合。
【讨论】:
根据我的经验,ArrayCollection 更易于使用,尤其是在您修改数组时,但这是以牺牲性能和开销为代价的。如果性能是一个问题,我会考虑使用和数组。
【讨论】:
This explains the differences. 最终,ArrayCollection 很有帮助,但对于像遍历列表这样的简单操作来说确实很慢。如果您正在使用视图,请使用 ArrayCollection。但是要在应用程序中传递数据,请坚持使用数组。
【讨论】: