字典的操作是根据键和值的操作,一个key有相对应的value的存在,也就是说通过key值我们可以找到相对应的value
ok ,我们先来学习下不可变的NSDictionary
创建字典
+(instancetype)dictionary //creates and return an empty dictionary
有时候我们将字典的信息放入文件中,我们需要将我们所需要的信息取出可以采用
+(NSDictionary *)dictionaryWithContentsOfFile:(NSString *)path
//creates and returns a dictionary using the keys and values found in a file specified by a given path
当然有时候也可以根据特定的URL来获取字典信息
+(NSDictionary *)dictionaryWithContentsOfURL:(NSURL *)url
//creates and return a dictionary using the kyes and values founds in a resource specified by a given URl
在更多的初始化过程中我们一般直接将键和值都写出来
+(instancetype)dictionaryWithObjectsAndKeys:(id)firstObject
eg:
NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"value",@"key",nil];
//creates and returns a dictionary containing entries consturcted form the specified set of values and keys
计数项
在开发过程中,我们经常需要知道字典中的数量
@property(readonly)NSUinteger count
//the number of entries in the dictionary
字典比较
-(bool)isEqualToDictionary:(NSDictionary *)otherDictionary
//Returns a Boolean value that indicates whether the contents of receiving dictionary are eaual to the contents of another given dictionary
访问键和值
@property(readonly,copy)NSArray *allKeys
//a new array containing the dictionary's keys or an empty array if the dictionary has no entries
@property(readonly,copy)NSArray *allValues
// A new array containing the dictionary's value or an empty array if the dictionary has no entries
//在操作过程中我们往往需要通过键值来查找相对应的vlaue
-(id)objectForKey:(id)key
//returns the value associates with a given key
枚举字典
当你想通过枚举的方式获得所有键的时候可以采用
-(NSEnumerator *)keyEnumerator
//returns an emumerator object that lets you access each key in the dictionary
所有对象的枚举对象
-(NSEmumerator *)objectEnumerator
//Returns an emunerator object that let youy access each value in the dictionary
存储字典
-(BOOL)writeToFile:(NSString *)path atomacially:(BOOL)flag
//writes a property list representation of the contents of the dictionary to given path
-(bool)writeToUrl:(NSURL *)aURL atomatically:(BOOL)flag
//Writes a property list representation of the contents of the dictionary to given URL
下面来接收NSMutableDictionary
首先创建和初始化的过程和NSDictionary一样处理
接下来我们要处理的是添加和删除的操作
添加操作
-(void)setObject:(id)anObject forKey:(id
//Adds a given key-vlaue pair to dictionary
删除操作
-(void)removeObjectForKey(id)akey
//Removes a given key and its associated value from the dictionary
-(void)removeAllObjects
//Empties the dictionary of its entries