如何定义动态数据 class? (Android - 改造 2)
How can I define dynamic data class? (Android - Retrofit2)
我正在通过 Kotlin 开发 Android 应用程序。该应用程序使用 Retrofit2 处理 HTTP 请求。我反复使用Retrofit2,但我不知道如何解决这种情况。
我想使用一个 API,它需要像 query1、query2 等查询(接近 100 个可用值)
例如:
When I send a request via "query1" the response object has coordinates: List<List<List<Double>>>
When I send a request via "query2" the response object has coordinates: List<List<Double>>
When I send a request via "query3" the response object has coordinates: List<List<List<List<Double>>>>
When I send a request via "query4" the response object has coordinates: List<List<Double>>
我不知道 API returns 内部列表如何计数。
顺便说一句,对象中只有一个坐标。
JSON格式的响应对象
[
{
"key-1": "value-1",
"key-2": "value-2",
"key-3": "value-3",
"key-4": {
"inner-key": [
[
[
1.0,
1.0
],
[
1.0,
1.0
]
]
]
}
},
{
"key-1": "value-1",
"key-2": "value-2",
"key-3": "value-3",
"key-4": {
"inner-key": [
[
[
[
1.0,
1.0
],
[
1.0,
1.0
]
],
[
[
1.0,
1.0
],
[
1.0,
1.0
]
]
]
]
}
}
]
这是我的数据类。但是我不知道如何定义“key4”对象。
data class Response(
val key1: String? = null,
val key2: String? = null,
val key3: String? = null,
val key4: key4? = null,
)
data class key4(
//How should I define the "inner-key" object
)
任何建议都会有所帮助。
解决方案:
我尝试了几种解决方法。我不知道这是完美的解决方案,但有我的 解决方案:
有我的数据class,我的问题中名字是key4。
data class key4(
val inner-key: List<Any>? = null
)
我也像这样投射内键:
val temp = response?.key4?.inner-key as List<List<Double>>?
或
val temp = response?.key4?.inner-key as List<List<List<Double>>>?
我正在通过 Kotlin 开发 Android 应用程序。该应用程序使用 Retrofit2 处理 HTTP 请求。我反复使用Retrofit2,但我不知道如何解决这种情况。
我想使用一个 API,它需要像 query1、query2 等查询(接近 100 个可用值)
例如:
When I send a request via "query1" the response object has coordinates: List<List<List<Double>>>
When I send a request via "query2" the response object has coordinates: List<List<Double>>
When I send a request via "query3" the response object has coordinates: List<List<List<List<Double>>>>
When I send a request via "query4" the response object has coordinates: List<List<Double>>
我不知道 API returns 内部列表如何计数。 顺便说一句,对象中只有一个坐标。
JSON格式的响应对象
[
{
"key-1": "value-1",
"key-2": "value-2",
"key-3": "value-3",
"key-4": {
"inner-key": [
[
[
1.0,
1.0
],
[
1.0,
1.0
]
]
]
}
},
{
"key-1": "value-1",
"key-2": "value-2",
"key-3": "value-3",
"key-4": {
"inner-key": [
[
[
[
1.0,
1.0
],
[
1.0,
1.0
]
],
[
[
1.0,
1.0
],
[
1.0,
1.0
]
]
]
]
}
}
]
这是我的数据类。但是我不知道如何定义“key4”对象。
data class Response(
val key1: String? = null,
val key2: String? = null,
val key3: String? = null,
val key4: key4? = null,
)
data class key4(
//How should I define the "inner-key" object
)
任何建议都会有所帮助。
解决方案:
我尝试了几种解决方法。我不知道这是完美的解决方案,但有我的 解决方案:
有我的数据class,我的问题中名字是key4。
data class key4(
val inner-key: List<Any>? = null
)
我也像这样投射内键:
val temp = response?.key4?.inner-key as List<List<Double>>?
或
val temp = response?.key4?.inner-key as List<List<List<Double>>>?