当我们有需求将hashmap转为json格式的string时,切记不要使用hashmap的tostring()方法,需要使用fastjson/gson将hashmap转为string。如果使用tostring()方法进行转换时,是无法将字符串再转为hashmap的。它只会出现序列化报错:
demo代码:
log:
再往下执行,通过Debug可见:
通过FastJson转换成String的方式可以再将String转为HashMap,但是通过toString转换会报错序列化问题。
HashMap toString源码:
HashMap重写了基类的toString方法,原理是通过for循环的方式将key与value之间用=连接后输出,显然这样并不是一个Json串的格式。
JSON.toJSONString(Object object)源码:
FastJson通过toJSONString方法可以将Object对象转为Json格式的字符串,反之,可以通过序列化/反序列化的方式将Json字符串转化为原对象。
Java免费学习笔记:立即学习
解锁 Java 大师之旅:从入门到精通的终极指南
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/12278.html