NSDictionary不可變字典
字典中的數(shù)據(jù)都是無序的;
初始化
NSDictionary *D1 = [[NSDictionary alloc] initWithObjectsAndKeys:@"zhangsan",@"name",@"20",@"age",nil];
//按一個值,一個鍵的順序排列;
NSDictionary *D2 = [NSDictionary dictionaryWithObjectsAndKeys:@"zhangsi",@"name",@"30",@"age",nil];
//便利構(gòu)造器;
NSDictionary *D3 = [[NSDictionary alloc] initWithObjects:@[@"wang",@"20"] forKeys:@[@"name",@"age"]];
//鍵值一一對應(yīng);
NSDictionary *D4 = [NSDictionary dictionaryWithOjects:@[@"zhao",@"12"] forKeys:@[@"name",@"age"]];
//相應(yīng)的便利構(gòu)造器;
字面量
NSDictionary *D5 = @{@"name":@"zhou",@"age":@"20"};
//鍵在值前,用':'連接,不同鍵值對間用','連接;
獲取所有Key
NSLog(@"%@",[D5 allKeys]);//allKeys 方法返回值是一個數(shù)組
獲取所有值
NSLog(@"%@",[D5 allValues]);//allValues 方法返回值是一個數(shù)組
NSMutableDictionary可變字典
初始化
NSMutableDictionary *D6 = [@{@"name":@"laowang",@"age":@77,@"sex":@"m",@"height":@175} mutableCopy];
//先設(shè)置字面量,在通過mutableCopay方法生成可變字典;
設(shè)置鍵值對
[D6 setObject:@"zhaosi" forKey:@"name"];
//如果有鍵就修改,如果沒這個鍵就添加;
[D6 addEntriesFromDictionary:D5];
//將D5中的鍵值對復(fù)制到D6中,如果D6中已經(jīng)存在某鍵,則D5的鍵值對將會覆蓋D6原有的;
[D6 setDictionary:D5];
//將D6變成D5;
刪除鍵值對
[D6 removeObjectForKey:@"name"];
[D6 removeObjectsForKeys@[@"sex",@"age"];
//刪除一組Key對應(yīng)的鍵值對;
[D6 removeAllObjects];
//刪除所有鍵值對;