Flex中Array和Array Collection的区别

时间:2010-07-16 13:42:26

标签: flex actionscript-3 actionscript flex3

在选择b / n Array和Arraycollection时,我很困惑为什么我会使用一个,为什么不使用另一个。 我已经阅读了langref中的理论,但除此之外,你从经验中学到了一个优点/缺点。

提前致谢。

4 个答案:

答案 0 :(得分:6)

ArrayCollection是Array的包装器。它提供排序和过滤功能,可用于显示目的而不会影响基础数据。

通过使用集合类,可以轻松地在数据格式之间切换,例如XMLListCollection,而无需重新编写所有排序和过滤代码。 [至少在理论上]。

答案 1 :(得分:1)

作为简化的经验法则,在Flex 3中,将Array用于只读数据提供程序,将ArrayCollection用于可在运行时修改的数据提供程序。

在Flex 4中,Spark等数据急切的组件(例如List或DataGroup)期望数据提供程序被输入为IList,因此在任何情况下都不再为数据提供程序提供数组类型的集合。

答案 2 :(得分:0)

根据我的经验,ArrayCollection更易于使用,尤其是在修改阵列时,但这会以性能和开销为代价。如果性能是一个问题,我会考虑使用和Array。

答案 3 :(得分:-1)

This explains the differences. 最终,ArrayCollection很有用,但即使是在列表上进行迭代等简单操作也非常慢。如果您正在使用视图,则使用ArrayCollection。但要在应用程序周围传递数据,请坚持使用数组。