gson 如何访问阵列改型2 / android Studio中的对象“播放器”

mkh04yzy  于 2022-11-06  发布在  Android
关注(0)|答案(2)|浏览(161)

我想在android中使用retrofint 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"
                    }
                }
            }
        ]
    }
}

有人能帮忙吗?

mzmfm0qo

mzmfm0qo1#

如果您正在使用Retrofit,我建议您使用Gson/Jackson/莫希转换器,这些转换器可以帮助您将JSON响应转换为普通的Java对象。
然后,您应该能够以

api.getPlayers() -> array of players
myzjeezk

myzjeezk2#

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

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(); 
}

P.S.确保使用相同的模式完成模型类。

相关问题