美文网首页
swift 字典转模型

swift 字典转模型

作者: 阶梯 | 来源:发表于2018-02-28 22:13 被阅读16次
    import UIKit
    
    class Person : NSObject {
        
      @objc var age : Int = 0
      @objc var name : String?
        
        //自定义构造函数,参数传入字典  ---> 字典的value本来就是可选类型的
        init(dict : [String : AnyObject]) {
           
            //在调用 setValuesForKeys 方法之前,需要先用 super.init() 创建这个类,才能调用这个类的方法
            super.init()
            
            //本类的方法调用的时候,self可以省略
            setValuesForKeys(dict)
        }
        
        override func setValue(_ value: Any?, forUndefinedKey key: String) {
            
        }
    }
    
    //若字典中,多一个height属性,只要不用kvc就不会蹦,为了防止蹦,需要加上  forUndefinedKey 方法。
    let p2 = Person(dict: ["name" : "why" as AnyObject, "age" : 18 as AnyObject, "height":1.88 as AnyObject])
    
    if let name = p2.name {
        print(name)
    }
    
    print(p2.age)
    
    kvc

    相关文章

      网友评论

          本文标题:swift 字典转模型

          本文链接:https://www.haomeiwen.com/subject/olcwxftx.html