我有一系列字典.
我想基于密钥过滤数组.
我试过这个:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(SPORT == %@)", @"Football"];
NSArray *filteredArray = [data filteredArrayUsingPredicate:predicate];
Run Code Online (Sandbox Code Playgroud)
这不起作用,我没有结果.我想我做错了什么.我知道如果"SPORT"是一个ivar,这就是方法.我认为如果它是关键的话可能会有所不同.
然而,我无法找到一个例子.
谢谢
更新
我在我正在搜索的字符串周围添加了引号.
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(SPORT == '%@')", @"Football"];
Run Code Online (Sandbox Code Playgroud)
它仍然无法正常工作.
更新2
解决了它.我实际上不得不删除单引号,这似乎与指南所说的相反.
我真正的问题是我有一个嵌套数组,我实际上并没有评估字典.骨头移动.
只是想知道这是否可能,也许我可以检索NSSet当前存储在给定NSAutoreleasePool实例中的对象?
我查看了Apple的NSAutoreleasePool参考资料,但没有找到与此问题有关的内容.
我有一个NSDrray的NSDictionary对象,我希望能够返回一个新的NSDictionaries数组,其中每个NSDictionary都有"Area == North"(例如).
到目前为止,我发现的最接近的例子是使用NSPredicate来过滤基于NSDictionary键的NSArray,但这只返回给定键的唯一值,而不是具有该键的字典.有没有办法执行类似的操作,并返回整个字典?