我发现在Objective-C中访问可变字典键和值时有些困难.
假设我有这个:
NSMutableDictionary *xyz=[[NSMutableDictionary alloc] init];
我可以设置关键点和值.现在,我只想访问每个键和值,但我不知道设置了多少个键.
在PHP中非常简单,如下所示:
foreach ($xyz as $key => $value)
在Objective-C中,这怎么可能?
我发现在Objective-C中访问可变字典键和值时有些困难.
假设我有这个:
NSMutableDictionary *xyz=[[NSMutableDictionary alloc] init];
我可以设置关键点和值.现在,我只想访问每个键和值,但我不知道设置了多少个键.
在PHP中非常简单,如下所示:
foreach ($xyz as $key => $value)
在Objective-C中,这怎么可能?
for (NSString* key in xyz) {
id value = xyz[key];
// do stuff
}
这适用于符合NSFastEnumeration协议(可在10.5+和iOS上使用)的每个类,不过NSDictionary
是少数允许您枚举键而不是值的集合之一.我建议你在Collections Programming Topic中读fast enumeration左右.
哦,我应该补充一点,你应该在枚举集合时修改它.