6

我有一个 NSDictionary 并想遍历对象。但同时,我需要知道字典的键。

我记得有一种特殊的、奇特的快速枚举形式,但忘记了确切的语法。

任何人?

4

5 回答 5

8

我认为你想要的是这样的:

for (id key in dictionary) {
    NSLog(@"key: %@, value: %@", key, [dictionary objectForKey:key]);
}

取自这里

于 2010-06-17T19:29:53.870 回答
7

如果你喜欢积木,这也是一个不错的选择。

[dict enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {

}]
于 2012-09-17T20:40:09.733 回答
1
for (id key in mydictionary) {
   id mything = [mydictionary objectForKey:key];
}
于 2010-06-17T19:29:52.500 回答
0

keyEnumerator 返回一个对象,可让您遍历字典中的每个键。从这里

于 2010-06-17T19:30:38.600 回答
0

据我所知,在您提出问题时,只有一种同时遍历键和值的方法:CFDictionaryApplyFunction.

使用这个 Core Foundation 函数涉及到一个丑陋的 C 函数指针用于循环体,以及许多不那么丑陋但免费的桥接转换。

@zekel 具有迭代字典的现代方式。给他投票!

于 2013-07-02T17:13:35.950 回答