如何解决Java中HashMap与String字符串互转的问题
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,小编给大家分享一下如何解决Java中HashMap与String字符串互转的问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!背景:当我们有需求将HashMap转为Json格式的St
千家信息网最后更新 2025年01月20日如何解决Java中HashMap与String字符串互转的问题
小编给大家分享一下如何解决Java中HashMap与String字符串互转的问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
背景:
当我们有需求将HashMap转为Json格式的String时,切记不要使用HashMap的toString()方法,需要使用FastJson/Gson将HashMap转为String。如果使用toString()方法进行转换时,是无法将字符串再转为HashMap的。它只会出现序列化报错:
demo代码:
HashMapdataMap = new HashMap<>(4); dataMap.put("key1", "value1"); dataMap.put("key2", "value2"); dataMap.put("key3", "value3"); dataMap.put("key4", "value4"); String byToString = dataMap.toString(); String byJSONString = JSON.toJSONString(dataMap); System.out.println(byToString); System.out.println(byJSONString); HashMap hashMap = JSON.parseObject(byJSONString, HashMap.class); HashMap hashMap2 = JSON.parseObject(byToString, HashMap.class);
log:
{key1=value1, key2=value2, key3=value3, key4=value4}{"key1":"value1","key2":"value2","key3":"value3","key4":"value4"}
再往下执行,通过Debug可见:
通过FastJson转换成String的方式可以再将String转为HashMap,但是通过toString转换会报错序列化问题。
原因:
HashMap toString源码:
HashMap重写了基类的toString方法,原理是通过for循环的方式将key与value之间用=连接后输出,显然这样并不是一个Json串的格式。
JSON.toJSONString(Object object)源码:
FastJson通过toJSONString方法可以将Object对象转为Json格式的字符串,反之,可以通过序列化/反序列化的方式将Json字符串转化为原对象。
看完了这篇文章,相信你对"如何解决Java中HashMap与String字符串互转的问题"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
字符
字符串
序列
方法
问题
方式
格式
对象
源码
篇文章
之间
代码
原因
原理
可以通过
完了
更多
知识
背景
行业
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数字化图书馆网络安全思考
ibm服务器M5
智能锁网络安全证书
棱镜门 网络安全
老头环无法连接至服务器
labview数据库行数
服务器端口和网关一样吗
数据库厂商卖什么
普通人能做游戏软件开发吗
网络安全等级保护云计算
从四方面体系化推进网络安全工作
csgo有哪些服务器
计算机数据库技术考的什么
plsql使用数据库
数据库的日期加减
阿拉德之怒长久服务器下载
数据库系统中级
服务器宝塔安全入口
软件开发口号 理念
郑州oa软件开发公司
数据库共享的技术方案
亲亲小贷服务器错误
网上注册服务器多少钱
unity如何连接数据库
天津启睿创鸿网络技术有限公司
家用共享服务器
数据库提示已存在
网络安全等级保护云计算
阿里云服务器连接密码
王者服务器优化啥时候结束啊