【发布时间】:2020-02-07 20:31:08
【问题描述】:
恕我直言,我正面临 GSON 的奇怪行为。举个例子:
{
"Name": "emaborsa",
"Surname": null
}
我的 POJO 是:
public class User {
@SerializedName("Name")
private String name;
@SerializedName("Surname")
private String surname;
// getter and setter
}
我使用以下代码对其进行反序列化:
Gson g = new Gson();
User user = g.fromJson(json, User.class);
变量name 设置为“emaborsa”,变量surname 我希望它设置为null,但有一个字符串“null”代替。
这是正确的行为还是我错过了什么?我试图用谷歌搜索,但很难找到与String 和null 相关的内容...
【问题讨论】:
-
我没有看到这个问题。你确定你的json没有引用“null”吗?我复制了您的用户代码和反序列化代码。但是我为我的 json 使用了一个字符串变量。你从哪里得到你的json?一份文件?变量?
-
是的,你是对的,这是我的错。我错过了代码中的一行,其中变量像
user.getSurname() + " "这样连接起来,所以我找到了字符串null
标签: java string null gson deserialization