我有一个NSSet
(例如“水果”),它由以下过滤代码组成NSManagedObjects
并使用以下过滤代码创建:
NSSet *fruits = [self.allFruits filteredSetUsingPredicate:
[NSPredicate predicateWithFormat:@"quantity > 10"];
每种水果都具有以下属性(属性):(name
例如:苹果、橙子、香蕉)、color
(红色、黄色、绿色)和quantity
(100、20、10)。
什么是最有效的方法来创建一个NSDictionary
包含NSSet
水果的name
s 作为键和quantities
对象(例如键:对象:苹果:100 橙:20)的最有效方法?
这是如何使用块枚举来完成的:
__block NSMutableDictionary *fruitsAndColors = [NSMutableDictionary dictionary];
[fruits enumerateObjectsUsingBlock:^(id fruit, BOOL *stop) {
[fruitsAndColors setObject:fruit.color forKey:fruit.name];
}];
有没有更优雅的方式来完成同样的事情?
谢谢!