KVC--字典转模型

2017-05-11  本文已影响18人  锦箫_1

object-c

方法-,声明一个Book类和一个Author类,在Book类中有一个author属性。

分别声明-(id)initWithDict:(NSDictionary*)dict;和+(id)authWithDict:(NSDictionary*)dict;方法。

在Book类中和Author类的.m文件中实现-(id)initWithDict:(NSDictionary*)dict;和+(id)authWithDict:(NSDictionary*)dict;方法

测试结果

方法二、使用- (void)setValuesForKeysWithDictionary:(NSDictionary*)keyedValues;批量赋值,在Book .h的头文件中可以这样声明-(void)setValue:(id)value forUndefinedKey:(NSString *)key;方法,并在.m文件里实现。

为了实现对嵌套json的处理,我们需要重写-(void)setValue:(id)value forKey:(NSString *)key方法,并且实现-(void)setValue:(id)value forUndefinedKey:(NSString *)key方法,这样当json中键值对多余模型类中的属性时不至于直接crash

测试

swift实现

定义一个Student和Book类,Student类中有一个book属性,在book类中实现了override func setValue(value: AnyObject?, forUndefinedKey key: String)方法,由于demo比较简单直接上代码

测试

上一篇 下一篇

猜你喜欢

热点阅读