使用Gson(Android)反序列化外部web-api我偶然发现了一个问题。
属性A
是一个对象列表,如下:
{
A: [
{ /* object */ },
{ /* object */ },
]
}
但是当A
只包含一个对象时,API会将其作为单个对象返回,如下所示:
{
A: { /* object */ }
}
在我的目标课程中,A
定义如下:
public class Foo {
private AObject[] A;
}
这适用于属性是正确的数组但是单个对象版本的以下异常失败时:
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was BEGIN_OBJECT
将属性反序列化为只包含一个项的数组的简单方法是什么?或者我必须循环响应并在反序列化之前更改它?
由于