目錄:
1、NSDictionary
2、NSMutableDictionary
1、NSDictionary
//NSDictionary的創(chuàng)建(NSDictionary的初始化)
//方式1
//鍵值對(duì) :一個(gè)鍵對(duì)應(yīng)一個(gè)值
NSDictionary * dic = [NSDictionary dictionaryWithObjectsAndKeys:@"aaaa",@"a",@"bbbb",@"b",@"cccc",@"c",@"dddd",@"d",nil];
NSArray *arr = @[@1,@2,@3];
NSArray *arr1 = @[@"a",@"b",@"c"];
NSDictionary *dic =[NSDictionary dictionaryWithObjects:arr forKeys:arr1];
//方式2 通過(guò)其它字典創(chuàng)建新的字典
NSDictionary * dic2 = [NSDictionary dictionaryWithDictionary:dic];
NSLog(@"%@",dic2);
//方式3 (常用 重要)
//NSArray * arr = @[@2,@"11",3.14];//不能放C語(yǔ)言的數(shù)據(jù)類型
//字典也不能放C語(yǔ)言的數(shù)據(jù)類型 它的鍵key 通常為字符串 所以咱們寫(xiě)的時(shí)候 把字典的鍵也都設(shè)為字符串
NSDictionary * dic3 = @{@"key":@"value",@"name":@"凹凸曼",@"sex":@"man"};
NSLog(@"%@",dic3);
NSLog(@"%@",[dic3 objectForKey:@"sex"]);
NSDictionary *dic = @{@"name":@"王大錘",@"age":@18,@"hobby":@"拍電影"};
NSLog(@"%@",dic);
NSLog(@"%@",dic.allKeys); //allkeys,為一個(gè)屬性名,獲得為一個(gè)數(shù)組,數(shù)組包含所有的key
NSLog(@"%@",[dic objectForKey:@"name"]);
NSDictionary *dic = @{@"name":@"王大錘",@"age":@18,@"hobby":@"拍電影"};
NSLog(@"%@",dic);
for (NSString * key in [dic allKeys])
{
NSLog(@"%@",key);
NSLog(@"%@",[dic objectForKey:key);
}
2、NSMutableDictionary(是NSDictionary的子類,父類方法均可用)
//NSMutableDictionary使用之前必須初始化
self.mtbDict = [NSMutableDictionary dictionary];
//使用字典初始化:可以是可變字典,也可以是不可變字典
self.mtbDict = [NSMutableDictionary dictionaryWithDictionary:@{}];
//可變字典可以增加、刪除、覆蓋。。。
//常用方法
- (void)removeObjectForKey:(KeyType)aKey;
- (void)setObject:(ObjectType)anObject forKey:(KeyType <NSCopying>)aKey;
- (void)addEntriesFromDictionary:(NSDictionary<KeyType, ObjectType> *)otherDictionary;
- (void)removeAllObjects;
- (void)removeObjectsForKeys:(NSArray<KeyType> *)keyArray;
+ (nullable NSMutableDictionary<KeyType, ObjectType> *)dictionaryWithContentsOfFile:(NSString *)path;
+ (nullable NSMutableDictionary<KeyType, ObjectType> *)dictionaryWithContentsOfURL:(NSURL *)url;
- (nullable NSMutableDictionary<KeyType, ObjectType> *)initWithContentsOfFile:(NSString *)path;
- (nullable NSMutableDictionary<KeyType, ObjectType> *)initWithContentsOfURL:(NSURL *)url;