NSDictionary在已知key值的情况下获取所对应object的方法有:
1,调用objectForKey方法
// 在这里 zs 就是key值, object就是该key值所对应的对象
NSString *object = [stringsDictionary objectForKey: @"zs" ];
2,快捷获取key所对应的object
//quickCreateDictionary是自己创建的一个字典对象,下标zh是key值。这种方法看起来有点像数组的表达形式
NSLog(@"%@",quickCreateDictionary[@"zh"]);
当知道object,想找对应的key值时:
//调用allKeyForObject方法,用数组keyArray保存字典quickCreateDictionary中object值为”haha“所对应的key值
NSArray *keyArray = [quickCreateDictionary allKeysForObject:@"haha"];
key和object都不知道的时候可以用遍历输出key和object:
1,采用加强的for循环语句遍历字典
//字符串对象key保存字典中的key值,[quickCreateDictionary objectForKey:key]返回key所对应的object值
for (NSString *key in quickCreateDictionary) {
NSLog(@"%@--> %@"key,[quickCreateDictionary objectForKey:key]);
}
2,调用enumerateKeysAndObjectsUsingBlock:^(...),
//enumerateKeysAndObjectsUsingBlock:^(...)这是一个block模块,其中key是关键字,obj是key值所对相应的object,stop是一个BOOL变量,判断是否停止
[quickCreateDictionary enumerateKeysAndObjectsUsingBlock:^(id _Nonnull key, id _Nonnull obj, BOOL * _Nonnull stop) {
NSLog(@"%@-->%@"key,obj);
}];
这上面是我最常用的几个获取键值的方法。
以及输出方法,希望能帮到你
|