Java 如何使用GSON反序列化数组数组
我有这样的JSON:Java 如何使用GSON反序列化数组数组,java,json,gson,Java,Json,Gson,我有这样的JSON: [[1,"A"],[2,"B"]] 我正在尝试用以下方法反序列化它: public class A { @SerializedName("id") private int id; @SerializedName("name") private String name; } String jstring = "[[1,\"a\"
[[1,"A"],[2,"B"]]
我正在尝试用以下方法反序列化它:
public class A {
@SerializedName("id")
private int id;
@SerializedName("name")
private String name;
}
String jstring = "[[1,\"a\"], [2, \"b\"]]";
Type collectionType = new TypeToken<Collection<A>>() {}.getType();
Gson gson = new Gson();
Collection<A> enums = gson.fromJson(jstring, collectionType);
}
据我所知,格森期望
{"id":1, "name":"b"} instead of [1,"b"]
那么我如何反序列化这个JSON呢?因为它是一个混合类型数组,也就是一个混合类型列表,请使用:
…=新的TypeToken(){}.getType();
列表枚举=。。。
Gson不会将数组映射到POJO。为了满足您的需要,JSON应该是:
[{“id”:1,“name”:“a”},{“id”:2,“name”:“b”}]
按原样,将列表
转换为列表
取决于您
{"id":1, "name":"b"} instead of [1,"b"]