这是我的 GSON 实例,因为您看不到 serializeNulls()。
private static final Gson GSON = new GsonBuilder().create();
这就是我生成 json 的方式:
object.add("inventory", GSON.toJsonTree(inventory.getItems()));
物品:
private int id;
private int amount;
public Item(int id, int amount) {
this.id = id;
this.amount = amount;
}
输出:
"inventory": [
{
"id": 13
"amount": 1,
},
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null
],
我也尝试创建一个适配器,但没有成功:
@Override
public JsonElement serialize(Item src, Type typeOfSrc, JsonSerializationContext context) {
System.out.println(src); // This only prints valid values, no nulls...
return new Gson().toJsonTree(src, src.getClass());
}
为什么输出包含空值以及如何消除它们?
蝴蝶不菲
相关分类