25-NSDictionary、MutableDictionary
来源:互联网 发布:李天下知乎 编辑:程序博客网 时间:2024/05/29 15:08
l通过唯一的key找到对应的value,类似于Java的Map
l常见的创建NSDictionary的方法
l+ (id)dictionary
l+ (id)dictionaryWithObject:(id)object forKey:(id <NSCopying>)key
l+ (id)dictionaryWithObjectsAndKeys:(id)firstObject, ...
l+ (id)dictionaryWithDictionary:(NSDictionary *)dict
l+ (id)dictionaryWithObjects:(NSArray *)objects forKeys:(NSArray *)keys
l- (id)initWithObjectsAndKeys:(id)firstObject, ...
l- (id)initWithDictionary:(NSDictionary *)otherDictionary
l- (id)initWithObjects:(NSArray *)objects forKeys:(NSArray *)keys
l+ (id)dictionaryWithContentsOfFile:(NSString *)path
l+ (id)dictionaryWithContentsOfURL:(NSURL *)url
l- (id)initWithContentsOfFile:(NSString *)path
l- (id)initWithContentsOfURL:(NSURL *)url
NSDictionary的常见用法
l- (NSUInteger)count
返回字典的key数
l- (BOOL)isEqualToDictionary:(NSDictionary *)otherDictionary
比较两个字典
l- (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile
将一个NSDicionary持久化到文件中去
NSDictionary 访问key和value
l- (NSArray *)allKeys
返回所有的key
l- (NSArray *)allKeysForObject:(id)anObject
返回anObject元素对应的所有key
l- (NSArray *)allValues
返回所有的value
l- (id)objectForKey:(id)aKey
根据aKey返回对应的value
l- (NSArray *)objectsForKeys:(NSArray *)keys notFoundMarker:(id)marker
返回keys对应的所有value,如果没有对应的value,用marker代替
NSDictionary遍历
l快速遍历:for (NSString *key in dict)
l迭代器遍历:
u- (NSEnumerator *)keyEnumerator
key的迭代器
u- (NSEnumerator *)objectEnumerator
value的迭代器
lblock遍历
[dict enumerateKeysAndObjectsUsingBlock:^(id key,
id object, BOOL* stop) {
NSLog(@"key=%@, object=%@", key, object);
NSDictionary的key排序
l- (NSArray *)keysSortedByValueUsingComparator:(NSComparator)cmptr
l- (NSArray *)keysSortedByValueWithOptions:(NSSortOptions)opts usingComparator:(NSComparator)cmptr
l- (NSArray *)keysSortedByValueUsingSelector:(SEL)comparator
用法参展NSArray的排序
NSMultableDictionary 可变的Dictionary
l可变的NSDictionary,NSDictionary的子类
l初始化方法:
u+ (id)dictionaryWithCapacity:(NSUInteger)numItems
u- (id)initWithCapacity:(NSUInteger)numItems
u也可以用初始化NSDictionary的方法来初始化NSMutableDictionary
NSMutableDictionary 添加元素
l- (void)setDictionary:(NSDictionary *)otherDictionary
设置当前集合的元素
l- (void)setObject:(id)anObject forKey:(id <NSCopying>)aKey
添加一个键值对
l- (void)addEntriesFromDictionary:(NSDictionary *)otherDictionary
添加otherDictionary的所有元素到当前集合中
NSMultableDictionary 删除元素
l- (void)removeAllObjects
删除所有元素
l- (void)removeObjectForKey:(id)aKey
删除aKey对应的值
l- (void)removeObjectsForKeys:(NSArray *)keyArray
删除keyArray中所有key对应的值
0 0
- 25-NSDictionary、MutableDictionary
- 26--(补充)-NSDictionary、MutableDictionary
- NSDictionary
- NSDictionary
- NSDictionary
- NSDictionary
- NSDictionary
- NSDictionary
- NSDictionary
- NSDictionary
- NSDictionary
- NSDictionary
- NSDictionary
- NSDictionary
- NSDictionary
- NSDictionary
- NSDictionary
- NSDictionary
- c# 操作mysql
- MySQL之基本命令
- Android 自定义 HorizontalScrollView 打造再多图片(控件)也不怕 OOM 的横向滑动效果
- 通过重新生成执行计划解决绑定变量执行计划偏差导致SQL执行时间过长
- 知识共享平台(JAVA)/UCenter/WeCenter 用户数据对接与单点登录
- 25-NSDictionary、MutableDictionary
- c#实现插入排序
- 回文子串问题求解SLOW
- 转:今天面试了一个开发人员,谈谈面试的体会
- 26--(补充)-NSDictionary、MutableDictionary
- 使用yum安装CDH Hadoop集群
- 27-NSNumber、NSvalue
- timensten 常见维护操作
- (转)Oracle/Mysql/SqlServer函数区别