我有大量不同的 NSObject 类型,它们都具有不同的属性,我试图抽象出一个方法,该方法允许我通过简单地传入我希望过滤的属性的 NSArray 来过滤对象的 NSArray。我过滤的数字键可能从 1 到其他任何值。
这是过滤 NSArray 的示例
NSArray *filterBy = [NSArray arrayWithObjects: @"ManufacturerID", @"CustomerNumber",nil];
这些键也存在于我正在过滤的 NSArray 的对象中,所以基本上这需要生成如下内容:
NSPredicate *pred = [NSPredicate predicateWithFormat:@"%K == %@ AND %K == %@", [filterBy objectAtIndex:0], [items valueForKey: [filterBy objectAtindex:0], [filterBy objectAtIndex:1], [items valueForKey: [filterBy objectAtIndex:1]];
这会产生类似的东西:ManufacturerID==18 AND CustomerNumber=='WE543'
是否有可能做到这一点?