JSON转model
//方法一
static func deserialize(from array: [Any]?) -> [Element?]?
// 反序列化
fileprivate func test1() {
let jsonString = "{\"age\":24,\"name\":\"Micheal\",\"sex\":\"男\"}"
guard let model = TestModel.deserialize(from: jsonString) else {return}
print(model.name)/// Micheal
print(model.age!)/// 24
print(model.sex!)/// 男
}
HandyJSONEnum
Model
enum AnimalType: String, HandyJSONEnum {
case Cat = "Cat"
case Dog = "Dog"
case Bird = "Bird"
}
struct Animal: HandyJSON {
var name: String?
var type: AnimalType?
}
Controller
override func viewDidLoad() {
super.viewDidLoad()
//HandyJSON
self.handyJSONTest()
}
func handyJSONTest() {
let jsonString = "{\"type\":\"Cat\",\"name\":\"Tom\"}"
if let animal = Animal.deserialize(from: jsonString) {
print(animal.type?.rawValue)
}
}
效果图:

网友评论