法一
据说是开发文档中的方法,未考证。
NSEnumerator *enumerator = [myDictionary keyEnumerator];
id key;
while ((key = [enumerator nextObject])) {
/* code that uses the returned key */
}
法二
@未解提供,也是最方便用的最多的一种方法,一般用这种就可以。
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:@"value1", @"key1", @"value2", @"key2", nil];
for (NSString *key in dict) {
NSLog(@"key: %@ value: %@", key, dict[key]);
}
法三
~~需要根据i
有特殊的操作时可以用这种~~
上面那一行删除了,好像是语法错了,没有删除线…
之前写这个文章的时候脑子里乱了,其实根据i
有特殊操作的是NSArray,感谢@未解的提醒~
这个方法是最笨拙的一个,一般遍历NSDictionary也不会这么用,姑且记在这里,怎么也算是一种方法嘛~
- (void)describeDictionary:(NSDictionary *dict)
{
NSArray *keys;
int i, count;
id key, value;
keys = [dict allKeys];
count = [keys count];
for (i = 0; i < count; i++)
{
key = [keys objectAtIndex: i];
value = [dict objectForKey: key];
NSLog (@"Key: %@ for value: %@", key, value);
}
}
刚开始写博客,没什么经验,慢慢摸索着来,感谢各位的指正与帮助~