Kotlin学习之json数据解析

通过这篇文章,可以学习到

1. 如何根据json数据创建一个对应的数据类
2. 如何根据json数据创建一个对象

(一)根据json数据创建一个对应的数据类
Kotlin学习之json数据解析_第1张图片

data class Test(
    val code : Int,
    val message : String,
    val warnMessage : String,
    val data : List<Data>
)

data class Data(
    val departmentCode : String,
    val departmentName : String,
    val dutyInfo : List<DutyInfo>
)

data class DutyInfo(
    val doctorCode : String,
    val doctorName : String,
    val departmentCode : String,
    val jobTitle : String,
    val doctorProfile : String,
    val restTicket : String,
    val dutyDate : String,
    val photo : String,
    val duty : List<Duty>
)

data class Duty(
    val dutyTimeName : String,
    val dutyWeek : Int,
    val totalTicket : Int,
    val restTicket : Int,
    val dutyDate : String
)

需要注意的是 在json中,如果数据是用 {}修饰,那么说明需要创建一个对象;如果是用【】修饰,那么需要创建一个数组列表

(二)如何根据json数据创建一个对象

如果是列表类型

    //传入的json为列表类型
    val json = "{\"code\":\"00001\",\"message\":\"test\",\"warnMessage\":\"test\"}"

    val gson = Gson()

    val account : Test = gson.fromJson(json,Test::class.java)

如果是数组类型

    //传入的json为数组类型
    val jsonArray = "[{\"zoneNumber\":\"00001\",\"roomNumber\":\"test\",\"bedNumber\":\"test\"}]"

    val inf : List<InpatientInfo> = gson.fromJson(jsonArray, object : TypeToken<List<InpatientInfo>>(){}.type)

------做个笔记-----

你可能感兴趣的:(kotlin学习,kotlin,学习,json)