gpt4 book ai didi

ios - 用其他数组过滤一个数组

转载 作者:行者123 更新时间:2023-12-01 18:15:45 25 4
gpt4 key购买 nike

我有2个数组:
array1包含object1类型的对象。 object1具有属性id
array2包含object2类型的对象。 object2具有属性object1Id

我知道array2包含ID始终在array1中的对象,但是array1可以具有更多(或相等)对象。
要显示它:

因此,为了简化起见:array1具有所有对象,array2具有新对象。如何获取带有旧对象的数组..?我正在尝试使用谓词,但是做一个循环并将每个object1Id插入谓词感觉很奇怪。还有其他选择吗?如何正确做?

最佳答案

您可以使用谓词,并且如果使用KVC,则不需要循环。

获取应排除的ID数组:

NSArray *excludeIds = [array2 valueForKey@"object1Id"];

创建谓词:
NSPredicate *filterPredicate = [NSPredicate predicateWithFormat:@"NOT (id IN %@)", excludeIds];

然后过滤:
NSArray *oldObjects = [array1 filteredArrayUsingPredicate:filterPredicate];

关于ios - 用其他数组过滤一个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22055867/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com