Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.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
Java 有没有一种简单的方法可以反序列化由类似的JsonObject组成的JsonObject,而这些JsonObject实际上应该是由这些对象组成的JsonArray?_Java_Android_Json_Gson_Deserialization - Fatal编程技术网

Java 有没有一种简单的方法可以反序列化由类似的JsonObject组成的JsonObject,而这些JsonObject实际上应该是由这些对象组成的JsonArray?

Java 有没有一种简单的方法可以反序列化由类似的JsonObject组成的JsonObject,而这些JsonObject实际上应该是由这些对象组成的JsonArray?,java,android,json,gson,deserialization,Java,Android,Json,Gson,Deserialization,好的,我的问题是我请求的json看起来像这样 {"matthew":{...}}, {"mark":{...}}, {"luke":{...}} [{"matthew":{...}}, {"mark":{...}}, {"luke":{...}}] 它是一个包含多个对象的对象,实际上应该是一个数组,因为所有这些对象都具有相同的结构。非常愚蠢。应该是一个数组,但不幸的是我不能改变这个服务器端,因为它不是我的api 现在如果json看起来像这样 {"matthew":{...}}, {"mark

好的,我的问题是我请求的json看起来像这样

{"matthew":{...}}, {"mark":{...}}, {"luke":{...}}
[{"matthew":{...}}, {"mark":{...}}, {"luke":{...}}]
它是一个包含多个对象的对象,实际上应该是一个数组,因为所有这些对象都具有相同的结构。非常愚蠢。应该是一个数组,但不幸的是我不能改变这个服务器端,因为它不是我的api

现在如果json看起来像这样

{"matthew":{...}}, {"mark":{...}}, {"luke":{...}}
[{"matthew":{...}}, {"mark":{...}}, {"luke":{...}}]
i、 简单的一个数组,解析起来就容易多了,对吗

public Coin deserialize(final JsonElement json, final Type typeOfT, final JsonDeserializationContext context)
    throws JsonParseException {
final JsonObject jsonObject = json.getAsJsonObject();
Person person = new Person();
person.name= jsonObject.get("name").getAsString(); 
person.age= jsonObject.get("age").getAsInt(); 
return person;
}
如果返回的json是数组,我就是这样解释的。但是如果它是一个物体呢?我正在使用rxjava改造和gson,因此如果有一种简单的方法来实现这一点,它将非常好,这样它看起来与我的其他服务类似,可以轻松地反序列化json数组

我想在响应中添加一个方括号会让它变得更简单,但是随着改装和rxjava,我仍然在学习,我不知道如何做到这一点。。如果所有对象属性都是实际上应该是数组的相同对象结构,那么有没有一种简单的方法将jsonobject解释为jsonarray


希望我解释清楚

在快速查看gson文档后,不知何故获得了名称,它显然类似于
JsonObject.entrySet()
的第一个元素(无论如何应该只有一个元素),然后是
MapEntry.getKey()
您面临的问题是什么?Ok更新了问题!在快速查看gson文档后,不知何故获得了名称,它显然类似于
JsonObject.entrySet()
的第一个元素(无论如何应该只有一个元素),然后是
MapEntry.getKey()
您面临的问题是什么?Ok更新了问题!