handyJson使用简介

//支持嵌套数组,枚举

import UIKit

import HandyJSON

//枚举

enum Grade: Int,HandyJSONEnum {

case One = 1

case Two = 2

case Three = 3

}

enum Gender: String,HandyJSONEnum {

case Male = "Male"

case Female = "Female"

}

//内部嵌套模型

struct Teacher: HandyJSON {

var name: String?

var age: Int?

var height: Int?

var gender: Gender?

}

//数组里面的struct

struct Subject: HandyJSON {

var name: String?

var id: String?

var credit: Int?

var lessonPeriod: Int?

}

//模型

class Student: HandyJSON {

var id: String?

var name: String?

var age: Int?

var grade: Grade = .One

var height: Int?

var gender: Gender?

var className: String?

var teacher: Teacher = Teacher()

var subjects: [Subject]?  //数组里面装的struct

var seat: String?

required init(){}

}

//模型类

class YGHandyJsonTest: NSObject {

//数据

let jsonStr = "{\"id\":\"585\",\"json_name\":\"Tom Li\",\"age\":18,\"grade\":2,\"height\":180,\"gender\":\"Female\",\"className\":\"A\",\"teacher\":{\"name\":\"Lucy He\",\"age\":28,\"height\":172,\"gender\":\"Female\",},\"subjects\":[{\"name\":\"math\",\"id\":18000324583,\"credit\":4,\"lessonPeriod\":48},{\"name\":\"computer\",\"id\":18000324584,\"credit\":8,\"lessonPeriod\":64}],\"seat\":\"4-5-7\"}"

func jsonToModel() {

if  let student = Student.deserialize(from: jsonStr){

print(student.toJSON())

}

}

}

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容