原因是二者的日期格式不统一。为了避免出现这样的问题,可以使用 GsonBuilder 来创建 Gson 对象,在创建过程中调用 GsonBuilder.setDateFormat(String) 指定一个固定的格式:
没用过gson,但根据它的API的JavaDoc,应该是用gson.toJsonTree(list)
这样得到的不是直接一个String而是一棵树,里面元素是JsonElement,然后对相应的节点,把它转类型成JsonObject,然后用JsonObject.addProperty(),爱加什么性质就加什么性质,最后用gson.toJson()把树转化为一个字符串。
使用Gson结合泛型解析数据时,用到了这么一个方法 parameterizedType.getActualTypeArguments()[0]那么它是什么意思呢?
getClass().getGenericSuperclass()返回表示此 Class 所表示的实体(类、接口、基本类型或 void)的直接超类的 Type,然后将其转ParameterizedType。
getActualTypeArguments()返回表示此类型实际类型参数的 Type 对象的数组。
[0]就是这个数组中第一个了,简而言之就是获得超类的泛型参数的实际类型。
本例中即为获得T的type。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)