我有一个Data类,如下所示
Class Data {
private Long check;
private Long cost;
}
我的jsonString看起来像
"data": { "cost": 5 }
当我做的时候
Data data = gson.fromJson(jsonString, Data.class);
我检查null是否检查如下
if (data.check == null) {//print error message}
它不起作用。 {//打印错误消息}处的语句不会被执行。有什么想法吗?
答案 0 :(得分:0)
如果你有一个json样本,例如:
{
"data": {
"cost": 5
}
}
这意味着你有一个对象,它有一个名为data的内部对象。所以你必须定义内部pojo(Data
)及其持有者pojo(即DataHolder
):
class DataHolder {
private Data data;
}
class Data {
private Long check;
private Long cost;
}
然后,您可以将json字符串反序列化为java实例:
GsonBuilder gsonBuilder = new GsonBuilder();
Gson gson = gsonBuilder.create();
String jsonString = "{\"data\": { \"cost\": 5 }}";
DataHolder dataHolder = gson.fromJson(jsonString, DataHolder.class);