1.字典是容器,与集合,数组一样都是容器,NSDictionary,
2.字典里的数据存放是无序的,而数组是有序的,key值不能重复,数组中通过下标取值的,字典里通过key
3.可变字典 NSMtabledictionary ,修改某个key对应的值[mutDic objectForKey:@“”];删除字典里某个元素[dic removeObjectForKey:@""];删除所有就是[dic removeAllobjects];
4.model:继承NSobject统称为model类,
5.NSDictionary,所有的不可变变量,只能够在初始化的时候赋值,都可以是一个modol类,更倾向于可变的,k值啥都可以用,根据key值得大小排序
6.[dic setValue:nil forKey:@"_name"];//关键字的值为空,也可以代表删除一对值的作用
例子:字典套字典字典套数组,用model再实现
Teacher.h文件
#import "Student.h"
@interface Teacher : NSObject
{ @public
Student *_stu;
}
@end
Student .h文件
@interface Student : NSObject
{ @public
NSMutableArray *_arr;
NSString *name;
NSString *sex;
}
@end
main函数
int main(int argc, const char * argv[]) {
NSMutableDictionary *dic=[NSMutableDictionary dictionary];
NSMutableArray *arr=[NSMutableArray arrayWithObjects:@"1",@"2", nil];
NSMutableDictionary *dic1=[NSMutableDictionary dictionaryWithObjectsAndKeys:@"小明",@"name",@"男",@"sex", nil];
[dic1 setObject:arr forKey:@"arr" ];
[dic setObject:dic1 forKey:@"dic1"];
// NSLog(@"dic=%@",dic);
model的实现
Teacher *teacher=[[Teacher alloc]init];
teacher->_stu=[[Student alloc] init];
teacher->_stu->_arr=[NSMutableArray arrayWithObjects:@"1",@"2", nil];
NSString *str=[teacher->_stu->_arr objectAtIndex:0];
NSLog(@"%@",str);