小编dar*_*n_c的帖子

gson-反序列化包含列表的对象

我是gson的新手,正在尝试研究如何反序列化对象中的列表。

错误消息提示我为Player创建了InstanceCreator。但是在实施时,我发现反序列化的对象包含一个Player列表,其名称字段设置为“默认值”,而不是从json字符串中选取值。所以我现在想知道这种方法是否正确。

这是我正在研究的模型的简化,但突出了问题所在...

public interface Player {
    String name();
}

public class PlayerImpl implements Player {

    private String name;

    public PlayerImpl(String name) {
        this.name = name;
    }

    public String name() { return this.name; }
}

public interface Team {
...
}

public class TeamImpl implements Team {

    String name;
    List<Player> players = new ArrayList<>();

    public TeamImpl(String teamName) { this.name = teamName; }

    ...
}
Run Code Online (Sandbox Code Playgroud)

我有一个简单的测试来创建一个拥有2名球员的新球队

Team t = new TeamImpl("teamname");
t.addPlayer(new PlayerImpl("p1"));
t.addPlayer(new PlayerImpl("p2"));
Gson gson = new Gson();
String …
Run Code Online (Sandbox Code Playgroud)

java gson json-deserialization

6
推荐指数
2
解决办法
2790
查看次数

标签 统计

gson ×1

java ×1

json-deserialization ×1