我有一个主要的 NSMutableDictionary,其中包含其他 NSMutableDictionary 的集合。
事情是这样的:
NSMutableDictionary *subDict1 = [NSMutableDictionary dictionaryWithObjectsAndKeys:
obj1, @"name",
obj2, @"color",
nil];
NSMutableDictionary *subDict2 = [NSMutableDictionary dictionaryWithObjectsAndKeys:
obj3, @"name",
obj4, @"color",
obj5, @"address",
obj6, @"phone",
obj7, @"color",
obj8, @"parent",
nil];
NSMutableDictionary *subDict3 = [NSMutableDictionary dictionaryWithObjectsAndKeys:
obj0, @"name",
obj9, @"parent",
objA, @"site",
objB, @"surname",
objC, @"label",
nil];
这些子词典可能有不同数量的条目,并且键可能会有所不同。有些可能有同名的键。
它们存储在一个主字典中,如下所示:
NSMutableDictionary *mainDict = [NSMutableDictionary dictionaryWithObjectsAndKeys:
subDict1, @"1",
subDict3, @"3",
subDict2, @"2",
nil];
我想一次性删除所有子词典中具有特定键的所有条目。
我知道我可以遍历字典和子字典,但我也知道字典有聪明的方法可以使用谓词和其他东西来做到这一点,但我不知道如何。我试图找到这一点,因为这将运行的方法有点棘手,并且必须尽可能快地完成它,我不确定循环的正常迭代是否足够快......
有什么线索吗?谢谢。