黑马程序员 NSDictionary的介绍及基础用法
来源:互联网 发布:跟着贝尔去冒险 知乎 编辑:程序博客网 时间:2024/06/06 16:38
NSDictionary是什么:不可变的键值对,通俗的字面理解又叫做字典
作用:用来存储数据的,里面的每个元素都是以键值对的形式存在的。它又称为键值对,通过key与value保存数组,两者绑定在一起作为一个完整的数据。
创建:
+ (instancetype)dictionary;
+ (instancetype)dictionaryWithObject:(ObjectType)object forKey:(KeyType <NSCopying>)key;
*/
#import <Foundation/Foundation.h>
int main(int argc,const char * argv[]) {
@autoreleasepool {
NSDictionary *d=[NSDictionary dictionaryWithObject:@"zhangsan" forKey:@"zs"];
NSLog(@"%@",d);
NSDictionary *d1=@{@"w":@"wo",@"s":@"shi",@"r":@"ren"};//快捷创建
NSUInteger count=d1.count;
NSLog(@"%lu",count);
//直接遍历
for (NSString *keyin d1) {
NSLog(@"%@=%@",key,d1[key]);
}
block遍历,block里三个参数 key:键 obj:值 *stop:控制停止
[d1 enumerateKeysAndObjectsUsingBlock:^(id _Nonnull key,id _Nonnull obj, BOOL * _Nonnull stop) {
//*stop=YES;
NSLog(@"%@=%@",key,d1[key]);
}];
/*
键值一一对应,若是key重复,默认输出的是第一个相对应的value
键值对的长度.count表示有几组键值对
利用key访问对应键的值
运行结果:
2016-01-27 19:25:14.453 NSDictionary[1550:96043] {
zs = zhangsan;
}
2016-01-27 19:25:14.454 NSDictionary[1550:96043] 2
Program ended with exit code: 0
*/
/Users/apple/Desktop/2.plist
BOOL result=[d1 writeToFile:@"/Users/apple/Desktop/2.plist" atomically:YES];//字典写入
if (result) {
NSLog(@"success");
}
else{
NSLog(@"fail");
}
NSDictionary *d2= [NSDictionary dictionaryWithContentsOfFile:@"/Users/apple/Desktop/2.plist"];//字典读取
NSLog(@"%@",d2);
}
return0;
}
- 黑马程序员 NSDictionary的介绍及基础用法
- 黑马程序员 - OC语言 - NSDictionary的介绍及使用
- 黑马程序员 --- NSDictionary和NSMutableDictionary的用法
- 黑马程序员---OC学习笔记之NSDictionary的介绍及使用
- 黑马程序员——NSDictionary和NSMutableDictionary的介绍及使用
- 黑马程序员--NSDictionary的使用
- 黑马程序员---IOS基础---数组的概念及用法
- 黑马程序员---IOS基础---指针的概念及用法
- 黑马程序员-oc基础-集合NSDictionary,NSMutableDictionary
- 黑马程序员-[OC]学习之旅-NSArray 和NSDictionary 的介绍
- 黑马程序员———OC语言 NSDictionary和 NSMutableDictionary的介绍
- 黑马程序员----字典、NSDictionary
- 黑马程序员---NSDictionary字典
- 黑马程序员---NSDictionary\NSMutableDictionary
- 黑马程序员:Eclipse的介绍及使用方法
- 黑马程序员——OC基础之NSDictionary
- 黑马程序员----OC学习之NSDictionary及NSMutableDictionary
- 黑马程序员-IOS基础---scanf函数用法及注意事项
- iOS 关闭键盘 退出键盘 的5种方式
- 竞争条件和关键区
- Itext5.8.8 Html 转化成PDF
- 线程安全性理解
- LeedCode 87. Scramble String
- 黑马程序员 NSDictionary的介绍及基础用法
- matlab---方程求解
- JavaSE入门学习14:Java面向对象之内部类
- nor flash启动与nand flash启动的区别
- 2015年工作总结
- HDOJ4908 - BestCoder Sequence
- Broadleaf电商系统开发(三) - 汉化
- lintcode: O(1) Check Power of 2
- FZU 2124 吃豆人(BFS 坑有点多)