Fastjson 反序列化异常问题请教

2022-12-22 16:25:55 +08:00
 Sherman07

小弟在项目中使用了 Fastjson V1.8.23 ,今天发现在反序列化时产生了异常, 代码如下

    responseResult = JSON.parseObject(response.getResponseText(), new TypeReference<A<BVO>>();
    List<C> cList = responseResult.getData().getCList();

其中 C 对象中含有一个 boolean 类型的属性 D ,在此处转换完成之后,C 对象的 D 属性默认成为了 false ,但是该属性未被初始化,应为 Null 值。 请大佬指点迷津,问题出在哪里

1513 次点击
所在节点    程序员
8 条回复
Sherman07
2022-12-22 16:31:06 +08:00
在尝试解决这个问题时,
我将 D 属性改为 int 类型,仍然出现该问题,D 属性被默认赋值 0 。
改为包装类型 Integer 时,该问题解决了,D 属性为 Null 。
popvlovs
2022-12-22 16:31:48 +08:00
你如果用的是 primitive type 的 boolean ,默认值就是 false ,你是想用 Boolean ?
JxQg597
2022-12-22 16:33:48 +08:00
boolean 是基本类型,听你的需求你应该要用的是 Boolean 。
Java 基础知识多巩固一下....
Sherman07
2022-12-22 16:41:23 +08:00
@popvlovs @JxQg597 多谢大佬,反应过来了,是用了基本类型的问题...
VensonEEE
2022-12-22 16:43:11 +08:00
boolean 没有 null 值 只有 true false
honjow
2022-12-22 18:08:51 +08:00
提问前还是得先把基础知识弄清楚
lei2j
2022-12-22 20:32:45 +08:00
先熟悉下 Java 的基本类型和包装类型的区别
Leon406
2022-12-24 10:11:28 +08:00
Java 基础知识多巩固一下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/904147

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX