从 ActionScript3 中的 ArrayCollection 中删除过滤掉的元素

发布于 2024-12-03 04:26:34 字数 298 浏览 0 评论 0原文

我有一个很大的 ArrayCollection 变量。 我想对其进行多次过滤,每次将过滤结果分配给不同的 ArrayCollection 变量。

如果有的话,可以说是人、水果和汽车。 (用于说明目的) 我想首先过滤它以仅显示人员,将结果分配给人员 ArrayCollection,然后过滤它以显示水果并将其分配给水果 ArrayCollection,依此类推。

我怎样才能做到这一点?不是过滤,而是过滤后的赋值。 或者通过大 ArrayCollection 运行 for 循环并将每个项目添加到相应的较小 ArrayCollection 中是否更快?

I have a big ArrayCollection variable.
I want to filter it several times and each time assign the filtered result to a different ArrayCollection variable.

So if it has let's say people, fruits and cars. (for illustration purposes)
I want to first filter it to only show people, assign the result to a people ArrayCollection, then filter it to show fruits and assign it to a fruits ArrayCollection and so on.

How can I do that? Not the filtering, but the assignment after filtering.
Or is it faster to instead run a for-loop through the big ArrayCollection and just add each item into the corresponding smaller ArrayCollection?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

罪#恶を代价 2024-12-10 04:26:34

您可以使用 mx.collections.ListCollectionView 为此。假设您有以下原始 ArrayCollection

var myCollection:ArrayCollection;

现在人们:

var peopleList:ListCollectionView = new ListCollectionView(myCollection);
peopleList.filterFuntion = peopleFilterFuntion;
peopleList.refresh();

水果也是如此:

var fruitsList:ListCollectionView = new ListCollectionView(myCollection);
fruitsList.filterFuntion = fruitsFilterFuntion;
fruitsList.refresh();

和汽车:

var carsList:ListCollectionView = new ListCollectionView(myCollection);
carsList.filterFuntion = carsFilterFuntion;
carsList.refresh();

You can use mx.collections.ListCollectionView for that. Say you have the following original ArrayCollection:

var myCollection:ArrayCollection;

Now people:

var peopleList:ListCollectionView = new ListCollectionView(myCollection);
peopleList.filterFuntion = peopleFilterFuntion;
peopleList.refresh();

The same for fruits:

var fruitsList:ListCollectionView = new ListCollectionView(myCollection);
fruitsList.filterFuntion = fruitsFilterFuntion;
fruitsList.refresh();

And cars:

var carsList:ListCollectionView = new ListCollectionView(myCollection);
carsList.filterFuntion = carsFilterFuntion;
carsList.refresh();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文