我有这样的改装回复:
langs: {
af: "Afrikaans",
am: "Amharic",
ar: "Arabic",
az: "Azerbaijani",
ba: "Bashkir",
...
我尝试将其读取到List<Map<String,String>>
,但它不起作用。
有谁知道将这个json转换为对象的最佳方法是什么?
呼叫:
val result = RestAPI.instance.retrofit?.create(TranslateService::class.java)
val call = result?.getLangs("en")
call?.enqueue(object : Callback<LangsResponse>{
override fun onFailure(call: Call<LangsResponse>?, t: Throwable?) {
}
override fun onResponse(call: Call<LangsResponse>?, response: Response<LangsResponse>?) {
}
})
data class LangsResponse(val dirs: List<String>,val langs: List<Map<String,String>>)
答案 0 :(得分:1)
langs
是一个JSON对象,因此可以将其读作Map<String,String>
。如果它是一个对象数组([{..},{..}]
),它将是List<Map<String,String>>
。
只需调整类型即可正常阅读。