使用NOT IN的NSArray与NSPredicate


90

我有一个NSArray,我想使用NSPredicate过滤掉某些对象,我希望可以使用NOT IN,因为我看到自己可以轻松地进行IN。

所以我有我的数组:

self.categoriesList

然后我得到要删除的值:

NSArray *parentIDs = [self.cateoriesList valueForKeyPath:@"@distinctUnionOfObjects.ParentCategoryID"];

这为我提供了我不想显示的类别的ParentCategoryID列表,因此我认为可以使用NSPredicate删除它们:

self.cateoriesList = [self.cateoriesList filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"CategoryID NOT IN %@",parentIDs]];

这将失败:

reason: 'Unable to parse the format string "CategoryID NOT IN %@"'

如果我只想使用IN,那当然是完美的。

Answers:



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.