首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何定义动态数据类?(安卓- Retrofit2)

如何定义动态数据类?(安卓- Retrofit2)
EN

Stack Overflow用户
提问于 2021-04-05 08:43:18
回答 1查看 335关注 0票数 0

我正在通过Kotlin开发一个Android应用程序。该应用程序使用Retrofit2处理HTTP请求。我一遍又一遍地使用Retrofit2,但我不知道如何解决这个场景。

我想使用一个API,它需要像query1、query2等查询(接近100个可用值)。

例如:

代码语言:javascript
复制
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如何返回内部列表计数。顺便说一下,对象中只有一个坐标。

JSON格式的响应对象

代码语言:javascript
复制
[
    {
        "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“对象。

代码语言:javascript
复制
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
)

任何建议都会有帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-13 11:36:07

解决方案:

我尝试了几种解决办法。我不知道它是完美的解决方案,但有我的解决方案

在我的问题上有我的数据类,它的名字是key4。

代码语言:javascript
复制
data class key4(
    val inner-key: List<Any>? = null
)

我还投了一个内键,比如:

代码语言:javascript
复制
val temp = response?.key4?.inner-key as List<List<Double>>?

代码语言:javascript
复制
val temp = response?.key4?.inner-key as List<List<List<Double>>>?
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66950333

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档