iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >如何解决Java中HashMap与String字符串互转的问题
  • 454
分享到

如何解决Java中HashMap与String字符串互转的问题

2023-06-29 15:06:10 454人浏览 安东尼
摘要

小编给大家分享一下如何解决Java中HashMap与String字符串互转的问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!背景:当我们有需求将HashMap转为JSON格式的String时,切记不要使用HashMap的

小编给大家分享一下如何解决Java中HashMap与String字符串互转的问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

背景:

当我们有需求将HashMap转为JSON格式的String时,切记不要使用HashMap的toString()方法,需要使用Fastjson/Gson将HashMap转为String。如果使用toString()方法进行转换时,是无法将字符串再转为HashMap的。它只会出现序列化报错:

如何解决Java中HashMap与String字符串互转的问题

demo代码:

        HashMap<String, String> dataMap = 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<String ,String> hashMap = JSON.parseObject(byJSONString, HashMap.class);        HashMap<String ,String> hashMap2 = JSON.parseObject(byToString, HashMap.class);

log:

{key1=value1, key2=value2, key3=value3, key4=value4}{"key1":"value1","key2":"value2","key3":"value3","key4":"value4"}

如何解决Java中HashMap与String字符串互转的问题

再往下执行,通过Debug可见:

如何解决Java中HashMap与String字符串互转的问题

通过FastJson转换成String的方式可以再将String转为HashMap,但是通过toString转换会报错序列化问题。

原因:

HashMap toString源码

如何解决Java中HashMap与String字符串互转的问题

HashMap重写了基类的toString方法,原理是通过for循环的方式将key与value之间用=连接后输出,显然这样并不是一个Json串的格式。

JSON.toJSONString(Object object)源码:

如何解决Java中HashMap与String字符串互转的问题

FastJson通过toJSONString方法可以将Object对象转为Json格式的字符串,反之,可以通过序列化/反序列化的方式将Json字符串转化为原对象。

看完了这篇文章,相信你对“如何解决Java中HashMap与String字符串互转的问题”有了一定的了解,如果想了解更多相关知识,欢迎关注编程网精选频道,感谢各位的阅读!

--结束END--

本文标题: 如何解决Java中HashMap与String字符串互转的问题

本文链接: https://www.lsjlt.com/news/325493.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何解决Java中HashMap与String字符串互转的问题
    小编给大家分享一下如何解决Java中HashMap与String字符串互转的问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!背景:当我们有需求将HashMap转为Json格式的String时,切记不要使用HashMap的...
    99+
    2023-06-29
  • Java中HashMap与String字符串互转的问题解决
    目录背景:原因:背景: 当我们有需求将HashMap转为Json格式的String时,切记不要使用HashMap的toString()方法,需要使用FastJson/Gson将Has...
    99+
    2024-04-02
  • python字符串数组互转问题如何解决
    这篇文章主要介绍了python字符串数组互转问题如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python字符串数组互转问题如何解决文章都会有所收获,下面我们一起来看看吧。字符串转list数组str&n...
    99+
    2023-07-05
  • 关于java数组与字符串相互转换的问题
    1.char数组(字符数组)->字符串 可以通过:使用String.copyValueOf(charArray)函数实现。   举例: char[] arr={'a','b...
    99+
    2024-04-02
  • Java中字符串占位替换、字符串拼接、字符串与Collection互转的方式
    场景 字符串占位替换 String.format 最原始最基础的方式。 使用%来表示占位,后面跟上不同的标识符,用于限定这个占位符的参数类型,由jdk原生提供支持。 示例:         String badao = String.for...
    99+
    2023-09-03
    java servlet 开发语言
  • C++中结构体和Json字符串互转的问题详解
    大家有没有在项目中遇到过,将一些预定义的本地结构体转换为Json字符串后,发送到网络中的情形。那我猜想下大家常规的做法:写一个函数,传入结构体的指针,然后在函数中对结构体的每一个成员...
    99+
    2024-04-02
  • Python字符串的字符转换、字符串劈分、字符串合并问题怎么解决
    1.字符串的字符转换1.1.字符转换的概念在前面说的的字符串替换,是将字符串中的一个子串替换成了新的子串,如果我们想对字符串中的某些字符进行转换,也就是对字符串中的单个字符进行替换,可以调用方法maketrans和translate来实现。...
    99+
    2023-05-23
    Python
  • PHP中数组与字符串如何相互转换
    这篇文章主要为大家展示了“PHP中数组与字符串如何相互转换”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“PHP中数组与字符串如何相互转换”这篇文章吧。explode()函数-字符串转化为数组ex...
    99+
    2023-06-25
  • java对象与Json字符串的相互转换
    文章目录 1.Json对象转换为java 对象 2. Java对象转换JSON 1.Json对象转换为java 对象 导入jackson的相关jar包 创建Jackson核心对象 ObjectMapper 调用ObjectMapper的相关...
    99+
    2023-10-23
    java json servlet
  • java未结束的字符串常量问题如何解决
    在Java中,字符串常量是由双引号括起来的字符序列。如果字符串常量没有正确地终止,即缺少了终止的双引号,就会导致编译错误。 要解决这...
    99+
    2024-02-29
    java
  • Java关于String字符串原理上的问题
    目录1、String 是最基本的数据类型吗?2、字符型常量和字符串常量的区别?3、什么是字符串常量池?4、String str=new String(“aaa”)创建了几个对...
    99+
    2024-04-02
  • 解决java字符串转换成时间Unparseable date出错的问题
    今天在写代码的时候,在将字符串转换成时间的时候,出现了这样的问题。 java.text.ParseException: Unparseable date: "2017-1-1 00...
    99+
    2024-04-02
  • 如何解决VBS中字符串连接的性能问题
    这篇文章将为大家详细讲解有关如何解决VBS中字符串连接的性能问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。当然,对于少量的字符串连接,效率并没有对程序造成多大影响,现在让我们考虑一个极端的问题:将1到...
    99+
    2023-06-08
  • Golang中字符串(string)与字节数组([]byte)一行代码互转实例
    目录一、字符串与字节数组?二、详细代码1.简单的方式字节转字符串2.简单的字符串转字节数组3.字节转字符串4.字符串转字节数组5.完整运行测试补充:一些结论如下总结一、字符串与字节数...
    99+
    2024-04-02
  • java中字符串如何去掉转义字符
    第一步:添加依赖   org.apache.commons commons-text 1.1 第二步:利用工具类进行处理 处理代码: String str = "{\\\"name\\\":\\\"xiaoxu\\\"...
    99+
    2023-08-31
    java mybatis 开发语言
  • 解决JSON.parse转化不规范json字符串的问题
    目录JSON.parse转化不规范json字符串问题1 json字符串中的key值没有带引号2 json字符串中的key值带的单引号3 规范的json字符串格式4 不规范json字符...
    99+
    2024-04-02
  • Java String类字符串的理解与认知
    目录一、前言二、String类概述三、字符串的特点四、String 构造方法图示:代码演示:五、String类对象的特点六、比较字符串的方法用法:代码图示:七、判断两个字符串地址是否...
    99+
    2024-04-02
  • 如何使用JavaScript解决字符串false问题
    这篇文章主要介绍了如何使用JavaScript解决字符串false问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。字符串'false'有问题const&nb...
    99+
    2023-06-27
  • java中如何将字符串反转
    字符串反转有以下四种方法:利用(charAt()方法,把后遍历出来的放在前面即可实现反转。利用(toCharArray()方法处理成字符数组的方法),把后遍历出来的放在前面即可实现反转。利用StringBuffer的reverse...
    99+
    2024-04-02
  • 如何在Java中分割String字符串
    这篇文章主要介绍“如何在Java中分割String字符串”,在日常操作中,相信很多人在如何在Java中分割String字符串问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何在Java中分割String字符串...
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作