#pragma mark 字典的創(chuàng)建
NSDictionary * dic = [[NSDictionary alloc]initWithObjectsAndKeys:
@"value1",@"key1",
@"value2",@"key2",
@"value2",@"key3",nil];
NSLog(@"%@",dic);
NSDictionary * dic1 = [NSDictionary dictionaryWithObjectsAndKeys:@"value1",@"key1", nil];
#pragma mark 用字典創(chuàng)建字典
NSDictionary * dic2 = [[NSDictionary alloc]initWithDictionary:dic];
NSLog(@"%@",dic2);
//xcode4.6
//格式: key : value 多個(gè)元素之間用,分隔
//用NSLog打印字典是不支持漢字的轉(zhuǎn)碼
// \U5bd2\U4ed2;
NSDictionary * dic3 =
@{@"key1":@"value1",
@"key2":@"value2",
@"key3":@"value3",
@"key4":@"value2"
};
NSLog(@"%@",dic3);
#pragma mark 查看鍵的個(gè)數(shù)
NSUInteger? num = [dic2 count];
NSLog(@"%lu",num);
#pragma mark 通過key找value
NSString * str =? [dic3 objectForKey:@"key1"];
//xcode4.6
NSString * str2 = dic3[@"key2"];
NSLog(@"%@",str);
NSLog(@"%@",str2);
#pragma mark? 獲取所有key 所有value
NSArray * keyArray? =? [dic3 allKeys];
NSArray * valueArray = [dic3 allValues];
NSLog(@"keys = %@",keyArray);
NSLog(@"values = %@",valueArray);
#pragma mark 查看一個(gè)value對(duì)應(yīng)多個(gè)key
NSArray * array =? [dic3? allKeysForObject:@"value2"];
NSLog(@"%@",array);
#pragma mark 可變字典
#pragma mark 創(chuàng)建可變字典
NSMutableDictionary * mutDic = [[NSMutableDictionary alloc] init];
NSDictionary * dic4 =
@{@"key1":@"value1",
@"key2":@"value2",
@"key3":@"value3",
@"key4":@"value2"
};
#pragma mark? 字典創(chuàng)造字典
NSMutableDictionary * mutDic2 = [[NSMutableDictionary alloc]initWithDictionary:dic4];
#pragma mark 增加鍵值對(duì)
//key不重復(fù)是增加鍵值對(duì)
[mutDic2 setObject:@"value3"
forKey:@"key5"];
//保證Key不重復(fù) key必須唯一
//通過查詢key的obj 是否為 ==NULL
//? ? ? ? if ([mutDic2 objectForKey:@"key5"]== NULL) {
//
//? ? ? ? }
NSDictionary * dic5 = @{@"key_1":@"value1",
@"key_2":@"value2"};
[mutDic2 addEntriesFromDictionary:dic5];
NSLog(@"%@",mutDic2);
#pragma mark 刪除鍵值對(duì)
//通過key刪除值
[mutDic2 removeObjectForKey:@"key_1"];
NSLog(@"%@",mutDic2);
NSArray * array2 = @[@"key_2",@"key2",@"key4"];
[mutDic2 removeObjectsForKeys:array2];
NSLog(@"%@",mutDic2);
//? ? ? ? [mutDic2 removeAllObjects];
//? ? ? ? NSLog(@"%@",mutDic2);
#pragma mark 修改value的值
//key 已存在是修改當(dāng)前value的值
[mutDic2 setObject:@"hhhh" forKey:@"key1"];
NSLog(@"%@",mutDic2);
//完全覆蓋掉當(dāng)前字典中所有的值
[mutDic2 setDictionary:dic2];
NSLog(@"%@",mutDic2);