-3

我想在android中使用retrofit 2和Gson从这个嵌套的json中解组一个玩家列表:

{
    "api": {
        "status": 200,
        "message": "GET players/playerId/44",
        "results": 1,
        "filters": [
            ...
        ],
        "players": [
            {
                "firstName": "Kent",
                "lastName": "Bazemore",
                "teamId": "29",
                "yearsPro": "7",
                "collegeName": "Old Dominion",
                "leagues": {
                    "standard": {
                        "jersey": "24",
                        "active": "1",
                        "pos": "G-F"
                    }
                }
            }
        ]
    }
}

任何人都可以帮忙吗?

4

2 回答 2

0

您首先需要创建一个模型类,然后您可以访问特定的键。例如:

public class ResponseItem {


private int status;
private String message;
private List<String> players;

public int getStatus() {
    return status;
}

public void setStatus(int status) {
    this.status = status;
}

public String getMessage() {
    return message;
}

public void setMessage(String message) {
    this.message = message;
}

public List<String> getPlayers() {
    return players;
}

public void setPlayers(List<String> players) {
    this.players = players;
}

在改造方法中添加以下代码片段:

if (response.isSuccessful()) {
  ResponseItem responseItem;
  responseItem = response.body(); 
}

PS 确保使用相同的模式完成模型类。

于 2021-09-02T09:55:49.987 回答
0

如果您正在使用 Retrofit,我建议您查看 Gson/Jackson/Moshi 转换器。这些有助于将您的 JSON 响应转换为纯 Java 对象。

然后你应该能够访问它

api.getPlayers() -> array of players
于 2021-08-26T23:57:38.303 回答