KVC也就是key-value-coding,即键值编码,通常是用来给某一个对象的属性进行赋值
特点是可以对类的私有属性进行赋值
[p setValue:@100 forKeyPath:@"weight"];
另外可以在字典构建模型中,简化操作
- (instancetype)initWithDict:(NSDictionary *)dict
{
if (self = [super init]) {
[self setValuesForKeysWithDictionary:dict];
}
returnself;
}
需要注意的是:
1,如果一个模型中包含了另外的模型对象,是不能直接转化成功的。
2,通过kvc转化模型中的模型,也是不能直接转化成功的。
3,字典转模型的时候,字典中的某一个key一定要在模型中有对应的属性。