当你想要清除一个数组集合时,什么时候应该使用removeAll()而不是只使用新的ArrayCollection?
删除所有遍历列表中每一项的迭代。当我想使用它的时候,我看不到它。
发布于 2011-03-14 01:06:10
您可能希望在ArrayCollection包含带有propertyChange事件分派器的项(具有绑定?)的情况下使用removeAll。removeAll将很好地为您清理这些事件。
但是,如果您使用新的ArrayCollection,旧的ArrayCollection将从引用中释放,但可能永远不会被垃圾回收,因为它仍然附加了引用。这可能会导致内存泄漏。
发布于 2013-03-29 18:46:54
请注意,如果定义并应用了filterFunction (.refresh()),并且源数组中有被此过滤器拒绝的元素,则removeAll()实际上不会从集合中删除所有元素。
https://stackoverflow.com/questions/5286326
复制相似问题