我有一个NSDictionary,想要迭代对象。但与此同时,我需要知道字典的关键。
我记得有一种特殊的,奇特的快速枚举形式,但却忘记了确切的语法。
任何?
答案 0 :(得分:8)
我认为你想要的是这样的:
for (id key in dictionary) {
NSLog(@"key: %@, value: %@", key, [dictionary objectForKey:key]);
}
取自here。
答案 1 :(得分:7)
如果您喜欢积木,这也是一个不错的选择。
[dict enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
}]
答案 2 :(得分:1)
for (id key in mydictionary) {
id mything = [mydictionary objectForKey:key];
}
答案 3 :(得分:0)
keyEnumerator返回一个对象,让您遍历字典中的每个键。来自here
答案 4 :(得分:0)
据我所知,在您提出问题时,只有一种方法可以同时遍历键和值:CFDictionaryApplyFunction
。
使用这个Core Foundation函数涉及一个丑陋的C函数指针,用于循环体和许多不那么丑陋但无需免费桥接的转换。
@zekel有modern way of iterating字典。投票给他!