遍历字典遍历的是key而不是value!!!
2015-07-02 15:10
507 查看
最近项目中需要遍历字典筛选有用信息,在遍历时遇到一些崩溃,猛然醒悟,虽不值一提,可也是个知识点,记录一下.
NSDictionary * dic = @{@"student":@[@"jim"], @"score":@[@"80"], @"ages":@[@"18", @"20", @"24"]}; for (id string in dic) { NSLog(@"string = %@", string); }
结果为:
string = score string = ages string = student
二如果你直接用了value的值
NSDictionary * dic = @{@"student":@[@"jim"], @"score":@[@"80"], @"ages":@[@"18", @"20", @"24"]}; for (id string in dic) { NSLog(@"string = %@", string[0]); }
则会抛出异常:
-[__NSCFConstantString objectAtIndexedSubscript:]: unrecognized selector sent to instance 0x335a4c
意思是说本该是字符串的对象,却调用objectAtIndex方法,抛出异常.正确的方法是:
for (id string in dic) { id value = dic[string]; NSLog(@"value = %@", value); }
相关文章推荐
- ios学习笔记:UIAlertView使用和监听点击事件
- @ResponseBody & @RequestBody
- [iOS]使用Audio Queue Services 播放和录制音频
- [前端] marquee使用
- Building an MFC project for a non-Unicode character set is deprecated
- 编译android源码遇到的问题use BUILD_PREBUILT instead
- MQTT的学习研究(十七)Mosquitto简要教程(安装&使用)
- 【android】开发笔记系列UI篇
- private static final long serialVersionUID的作用
- UITableView添加UITapGestureRecognizer与didSelectRowAtIndexPath冲突解决
- Activity中UI框架基本概念
- MQTT的学习研究(十六) MQTT的Mosquitto的window安装部署
- MQTT的学习研究(十四) MQTT moquette 的 Callback API 消息发布订阅的实现
- MQTT的学习研究(十二) MQTT moquette 的 Future API 消息发布订阅的实现
- MQTT的学习研究(十)【转】mosquitto——一个开源的mqtt代理
- MUI开发注意事项 Uncaught ReferenceError: plus is not defined
- 小胖说事23-----UICollectionView基础笔记
- 黑马程序员----OC学习笔记之NSNumber和NSValue
- NSInteger 与 NSUInteger 和 int 区别
- UITextView 200字符限制,中文算1个字,英文算0.5个字