NSDictionary类似Java中的Map,内部存储key-value对,key的类型是NSString,value可以是任意对象类型指针。键值和数据必须不为nil,如果想表示一个空的值,则用NSNull。字典本身是不可以更改的。NSMutableDictionary 是可更改的字典。
下面例子是网上流传的,写的很细
NSArray *array1 = [NSArray arrayWithObjects:@"iphone",@"ipod",nil];
NSArray *array2 = [NSArray arrayWithObjects:@"mac",@"imac",@"mac pro",nil];
////1、创建字典 ,类方法初始化自动释放
NSDictionary *myDictionary = [NSDictionarydictionaryWithObjectsAndKeys:array1,@"mobile",array2,@"computers",nil];//注意用nil结束
NSLog(@”myDictionary = %@”,myDictionary);
//得到key-value的个数
int dictSize = [myDictionary count];
//根据key找到字典中的值
NSArray *mobile = [myDictionary objectForKey:@"mobile"];
//得到所有key
NSArray *keys = [myDictionary allKeysForObject:array1];
//得到所有value
NSArray *values = [myDictionary allValues];
//快速枚举
for(id key in myDictionary)
{
NSLog(@”key: %@,value: %@”,key,[myDictionary objectForKey:key]);
}
//如果字典只包含属性列表对象(NSData,NSDate,NSNumber,NSString,NSArray或NSDictionary)可以保存到文件中
NSString *filePath = [[[NSBundlemainBundle]resourcePath]stringByAppendingPathComponent:@”dict.txt”];
BOOL success = [myDictionary writeToFile:filePath atomically:YES];
//用文件填充
NSDictionary *myDict2 =[NSDictionary dictionaryWithContentsOfFile:filePath];
//可变字典
NSMutableDictionary *dictMutable = [[NSMutableDictionaryalloc]initWithObjectsAndKeys:array1,@”mobile”,array2,@”computer”, nil];
NSString *string4 = @”stringTV”;
//修改对象
[dictMutable setObject:string4 forKey:@"media"];
//删除对象
[dictMutable removeObjectForKey:@"mobile"];
//删除多个对象
NSArray *keyArray =[NSArray arrayWithObjects:@"mobile",@"computer", nil];
[dictMutable removeObjectForKey:keyArray];
//删除所有对象
[dictMutable removeAllObjects];
分享到:
相关推荐
ios demo,NSDictionary toJSONString,字典转换到JSONString
ios demo,NSData和NSDictionary之间的相互转换的实现案例。
主要介绍了IOS 开发之NSDictionary转换成JSON字符串的相关资料,这里提供实例帮助大家学习理解这部分知识,需要的朋友可以参考下
object-c基础语法NSDictionary, 适合初学者,主要学习字典的操作,包括字典创建、长度、通过KEY找到value、获取所有key、获取所有value、以及可变字典的定义、可变字典添加值、可变字典的删除等
视频:-Yogesh Patel在Objective-C中使用NSDictionary和NSMutableDictionary的介绍。 在本频道中,我将在多部视频中讲授大多数目标C编程语言。 一定要去MyChannel享受视频和不要忘记订阅我的频道: -
开发中经常需要打印日志以查看数据是否正确,或者说查看数据的格式。但是,苹果对于我们的NSDictionary、NSSet、NSArray等值有中文时,打印出来的是Unicode编码,人类无法直接读懂,因此,笔者研究研究如何将打印...
Keychain-iOS-ObjC是用于在iOS中使用Keychain的简单Objective-C包装器, KFKeychain类能够保存,加载和从iOS Keychain中删除任意对象,包括NSString和NSDictionary 。 例子 假设我们要在iOS钥匙串中存储用户授权...
2.字典中的对象储存没有顺序,使用key来表示每个对象,key唯一,Value值可相同 3.字典里Value值在前,key在后 Cocoa中的实现字典的集合NSDictionary在给定的关键字(通常是一个NSString)下存储一个数值(可以是...
c).请求失败回调代理方法: -(void)managerCallAPIDidFailed:(MSAPIBaseManager *)manager 6、若VC销毁,该VC下所有的未完成的请求会自动取消。 7、如需更多内容,请移步:...
NSDictionary-Enhance NSDictionary NSMutableDictionary 增强 Import pod 'NSDictionary-Enhance', '~> 1.0.0' Usage #import "NSDictionary+VDEnhance.h" ...[self.dic vd_setObject:nil forKey:@"key"]; // 处理设置
块是Objective-C对象,也就是说它们可以被添加到像NSArray和NSDictionary这样的集合中,其还具有从封闭范围捕获值的能力。源码github.com/pro648/BasicDemos-iOS/tree/master/Block 块是一个独立的代码片段,...
NSDictionary-NilSafe, 发光时我们如何让NSDictionary安全 nsdictionary-nilsafe在发光的时候我们如何使NSDictionary安全,更多的在发光科技博客上阅读。 示例要运行示例项目,克隆 repo,然后从示例目录中运行 pod ...
自定义类在NSdictionary当key的示例, 简单,粗暴!
ios demo,JSONString to NSDictionary,字符串JSON数据转换到字典数据
根据条件查询字段 返回的数组是字典( @[@{key:value},@{key:value}] ) ,where形式 @[@"key",@"=",@"value",@"key",@">=",@"value"] */ -(NSArray*)queryWithTableName:(NSString*)name keys:(NSArray*)keys ...
Foundation框架:学习Foundation框架中提供的常用类,如NSString、NSArray、NSDictionary等。 Cocoa和UIKit:了解这两个框架提供的界面开发相关类和接口。 协议与代理:理解协议(Protocol)和代理(Delegate)设计模式...
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds]; ...
JKCategories(iOS-Categories),是有用的Objective-C类别的集合,这些类别扩展了iOS框架,例如Foundation,UIKit,CoreData,QuartzCore,CoreLocation,MapKit等。 要求 该库需要iOS 7.0+和Xcode 8.0+ 。 安装 ...
灵活: 支持反序列化json key替换,支持自设定主键,支持忽略模型存储字段,支持反序列化代理之定义数据(deserialize()),支持使用Sqlite函数进行查询. 强大: 支持json反序列化对象-对象增删改查数据库-对象序列化,...