这是我的字符串:
{"array":[{"message":"test1","name":"test2","creation":"test3"},{"message":"test1","name":"test2","creation":"test3"}]}
我想让它把这个数组放到Kotlinapp for Android的对象列表中。我试着用这个网站上的两个例子来做这件事...所以下面是我的代码(res =那个字符串):
val gson = Gson()
val obj = gson.fromJson(res, JsonObject::class.java)
val arr = obj.getAsJsonArray("array")
println(arr.toString())
val list1 : List<JThread> = gson.fromJson(arr, object : TypeToken<List<JThread>>() {}.type)
val list2 = gson.fromJson(arr, Array<JThread>::class.java).asList()
for (x in list1){
println(x.message)
}
for (x in list2){
println(x.message)
}
但是我只在x.message中得到了null。我不知道哪里出错了。我还尝试在所有地方将arr改为arr.toString(),但也没有成功。
此外,JThread还具有以下特点:
object JThread {
var message: String? = null
var name: String? = null
var creation: String? = null }
2条答案
按热度按时间8xiog9wr1#
这可以在没有GSON或任何其他第三方库的情况下完成:
用于将JSONArray转换为列表的用法:
将JSONObject转换为Map的用法:
更多信息请访问here
jobtbby32#
使用此代码:
PS:我用这个网站做的:http://www.jsonschema2pojo.org/