gpt4 book ai didi

android - List 而不是一个类 GSON 中的多个对象
转载 作者:行者123 更新时间:2023-11-29 19:30:08 24 4
gpt4 key购买 nike

为了简化,我有 json具有以下结构的字符串:

{
"route": {
"bus-1": {
"stations": [
],
"geo": [
]
},
"bus-2": {
"stations": [
],
"geo": [
]
}
},
"routesReverse": {
"bus-1": {
"stations": [
],
"geo": [
]
},
"bus-2": {
"stations": [
],
"geo": [
]
}
}
}

我正在尝试使用 GSON 来解析它:

public class MainJson {

@SerializedName("route")
@Expose
public Routes route;
@SerializedName("routesReverse")
@Expose
public Routes routesReverse;

public Routes getRoute() {
return route;
}

public Routes getRoutesReverse() {
return routesReverse;
}
}

我已经创建了所有模型,但我对这个模型有疑问:

public class Routes {

@SerializedName("bus-1")
@Expose
BusStop busStop1;

@SerializedName("bus-2")
@Expose
BusStop busStop2;

public BusStop getBusStop1() {
return busStop1;
}

public BusStop getBusStop2() {
return busStop2;
}
}

我不喜欢这种创建 BusStop 的方法带有注释的每条公交路线的对象,我想创建类似 List<BusStop> 的东西因为我的json不仅有 2 条路线。

如何实现?

最佳答案

您可以修改收到的 json 的结构吗?因为最简单的方法是在“route”json 对象中使用一个名为“bus”的数组,而不是多个“bus-i”对象.如果你不能修改 json,那么我认为 GSON 内部没有任何方便的解决方案可用,因为它映射对象 1-to-1,即使你应用'alternate'标签。查看文档以获取 @SerializedName 注释 here .

关于android - List<Object> 而不是一个类 GSON 中的多个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40193990/

24 4 0