我有一个含有X个项目的数组,需要按照uid过滤出特定的项目。我已经编写了下面的谓词,相信它是正确的。但我面临的问题是Swift编译器只允许我使用接受argumentArray参数的初始化器。
let uids = ["34885a9f0897f8e9", "11364aca04e29be0", "c25047b10ad2a0d2"]
NSPredicate(format: "NOT (uid IN %@)", argumentArray: uids)
这始终解析为以下内容:
NOT uid IN "18bbfd4d3f099297"
我知道我在这里漏掉了一些显而易见的东西。我该如何构建一个NSPredicate来过滤一个包含25个项目的数组,将其缩减为一个不包含上述"uids"的22个项目的数组?我需要将此谓词传递到一些Objective-C代码中。
uids
强制转换为 NSArray 吗? - nielsbot