Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/193.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何使用改型2.0(Kotlin)正确解析嵌套的JSON对象?_Android_Json_Kotlin_Retrofit_Pojo - Fatal编程技术网

Android 如何使用改型2.0(Kotlin)正确解析嵌套的JSON对象?

Android 如何使用改型2.0(Kotlin)正确解析嵌套的JSON对象?,android,json,kotlin,retrofit,pojo,Android,Json,Kotlin,Retrofit,Pojo,下面的JSON对象是我从服务器(get请求)接收到的内容。我需要得到坐标值(lat,long) 我正在尝试使用以下Poko(Kotlin)来实现这一点: 我如何解析它? 谢谢。再添加一个表示测试对象类型的类位置 package com.zowye.API.Models import com.google.gson.annotations.SerializedName class Location ( var type: String?,

下面的JSON对象是我从服务器(get请求)接收到的内容。我需要得到坐标值(lat,long)

我正在尝试使用以下Poko(Kotlin)来实现这一点:

我如何解析它?
谢谢。

再添加一个表示测试对象类型的类位置

    package com.zowye.API.Models

    import com.google.gson.annotations.SerializedName


    class Location (
        var type: String?,
        var coordinates: Float[]?
    )

    class Salao
        (
        @SerializedName("loc") var coordinate: Location,
        var city: String?,
        var name: String?
    )

您应该为“loc”创建一个数据类

数据类Salao(
@序列化名称(“loc”)
val位置:位置,
瓦尔市:字符串,
val name:String,
@SerializedName(“\u id”)
valid:String
)
数据类位置(
val类型:String,
val坐标:数组
)

您是否尝试过使用Gson?这是一个流行的库,您可以使用它自动将json映射到数据模型!谢谢你,我的朋友!
package com.zowye.API.Models

import com.google.gson.annotations.SerializedName


class Salao
    (
    @SerializedName("loc") var coordinate:  , // not sure about the type
    var city: String?,
    var name: String?
)
    package com.zowye.API.Models

    import com.google.gson.annotations.SerializedName


    class Location (
        var type: String?,
        var coordinates: Float[]?
    )

    class Salao
        (
        @SerializedName("loc") var coordinate: Location,
        var city: String?,
        var name: String?
    )
data class Salao(
        @SerializedName("loc")
        val location : Location,
        val city : String,
        val name : String,
        @SerializedName("_id")
        val id : String
    )

data class Location (
        val type : String,
        val coordinates : Array<Float>
    )