ios - 一个 id 数组,用于通过 NSPredicate 过滤数组

标签 ios objective-c nspredicate

如果我只传递一个 itemId,下面的谓词就可以工作,但我想知道如果我有多个 itemId,我怎么才能让它工作呢?

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(%K == %@)", kItemId, itemId];
NSArray *filteredArray = [restaurantData.itemArray filteredArrayUsingPredicate:predicate];

最佳答案

您可以执行IN查询:

NSPredicate *predicate = [NSPredicate predicateWithFormat:
@"(%K IN %@)", kItemId, yourArrayOfItemId];

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

相关文章:

iphone - 当应用程序不在后台时,URL 方案不起作用

ios - 在 SwiftUI 中带有导航栏标题的 EXC_BAD_ACCESS

iphone - 如何防止Core Data中出现 "SQL Injection"?

syntax - "cdl"在 TOKENMATCHES[cdl] 中有什么作用?

core-data - 核心数据 : How can I use NSPredicate on Transformable?

ios - 如何隐藏我的 UITableViewCell 之外的内容

ios - 删除或移除 CoreData 中的 ManagedObject

ios - 子类化 UIView 需要什么

objective-c - 如何阻止将巨大的 Prefix.pch.gch 文件复制到应用程序包中

objective-c - UISlider 在最大边缘位置不响应