如何循环遍历NSMutableDictionary中的所有对象,而不管键是什么?循环遍历一个NSMutableDictionary
85
A
回答
197
的标准方法是这样的
for(id key in myDict) {
id value = [myDict objectForKey:key];
[value doStuff];
}
22
您可以使用[dict allValues]
让你值的NSArray
。请注意,它不保证通话之间的任何顺序。
26
可以使用
[myDict enumerateKeysAndObjectsUsingBlock: ^(id key, id obj, BOOL *stop) {
// do something with key and obj
}];
如果您的目标操作系统支持块。
1
另一种方法是使用Dicts枚举器。下面是来自苹果的一些示例代码:
NSEnumerator *enumerator = [myDictionary objectEnumerator];
id value;
while ((value = [enumerator nextObject])) {
/* code that acts on the dictionary’s values */
}
2
- 对于简单的循环,快速列举比快一点基于块的环
- 这是容易做到的并发或反向比基于块的枚举枚举快速列举 当NSDictionary的循环,你可以得到一重击与基于块的枚举键和值,而与快速列举你必须使用该密钥来检索单独的消息的价值在FAS发送
牛逼枚举
for(id key in myDictionary) {
id value = [myDictionary objectForKey:key];
// do something with key and obj
}
在块:
[myDictionary enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
// do something with key and obj
}];
3
你不需要值赋给变量。您可以直接使用myDict[key]
访问它。
for(id key in myDict) {
NSLog(@"Key:%@ Value:%@", key, myDict[key]);
}
相关问题
- 1. 循环遍历一个NSMutableArray
- 2. 循环遍历一个对象和循环遍历数组的一个嵌套for循环
- 3. 循环遍历一个mysql字段
- 4. 使用foreach循环遍历一个observableArray
- 5. 一次循环遍历多个数字
- 6. 迭代遍历一个Foreach循环
- 7. 循环遍历一个Cfquery或Struct?
- 8. 在PHP中循环遍历一个JSON
- 9. 循环遍历一个对象 - php
- 10. 循环遍历isEmpty
- 11. 循环遍历天
- 12. 循环遍历LinkedList
- 13. 循环遍历pd.dataframe
- 14. 循环遍历一个列表,只循环某个类的li?
- 15. Python,下一个循环遍历循环迭代
- 16. 生成元组以循环遍历一个循环
- 17. 循环遍历for循环和If/Else
- 18. 未循环遍历循环 - javascript
- 19. VBA循环遍历嵌套for循环
- 20. 遍历For循环,ArrayIndexOutOfBounds
- 21. 循环遍历表列
- 22. 在jQuery中循环遍历
- 23. 循环遍历集合
- 24. Python循环遍历列表
- 25. 在ruby中循环遍历
- 26. 多次循环遍历DataTable
- 27. 循环遍历所有值
- 28. MySQL循环遍历列
- 29. 循环遍历关系表
- 30. 循环遍历UITableView的UITableViewCells
我遇到过更多的方法来做这个错误比你可以动摇棒。谢谢!!! – mpemburn 2012-05-17 20:34:14
如果只有某种方式可以做到:'for(id key,myDict中的值)',那将是完美的。 – 2013-07-12 17:32:15
谢谢!容易忘记简单的语法有时。 – abriggs 2013-08-09 16:40:08