Java中Map与JSON数据之间的互相转化

 更新时间:2023年04月15日 09:25:13   作者:韩凡  
我们在开发中难免和JSON打交道,这不小编最近遇到了,需要把一些信息转成JSON字符串,下面这篇文章主要给大家介绍了关于Java中Map与JSON数据之间的互相转化,需要的朋友可以参考下

map

此内容是方便博主自己记忆内容,不用于公开学习资料,若发现语法错误,自行更正,勿喷

map转JSON字符串

package com.hanfan.test;// HANFAN自动读取PC名字,也可以写死这个名字

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;

import java.util.HashMap;
import java.util.Map;

/**
 * @Author HANFAN
 * @Date 2022/4/21 16:01
 * @Version 1.0
 */

public class mapAndJsonCast {

    public static void main(String[] args) {

        /* map转化JSON字符串常用 */
        Map testMap = new HashMap<>();
        testMap.put("str1","fu");
        testMap.put("str2","ck");
        String str = JSON.toJSONString(testMap);
        System.out.println("testMap的值:" + testMap);

//      打印的结果是:       testMap的值:{str1=fu, str2=ck}
    }
}

JSON字符串转JSON对象

        /* JSON字符串转JSON对象常用*/
        String jsonStr = "{\"str3\":\"zhangsan\",\"str4\":\"lisi\",\"str5\":\"wangwu\",\"str6\":\"maliu\"}";
        JSONObject jsonObject = JSONObject.parseObject(jsonStr);
        System.out.println("jsonObject:" + jsonObject);
//      打印的结果是:       jsonObject:{"str5":"wangwu","str6":"maliu","str3":"zhangsan","str4":"lisi"}

Map转JSON对象

由上面两条转化可知,map先转成JSON字符串,再由JSON字符串转化成JSON对象

        /*Map转JSON对象常用 */
        JSONObject JSONObj = JSONObject.parseObject(JSON.toJSONString(testMap));
        System.out.println("JSONObj:" + JSONObj);
//      打印的结果是:        JSONObj:{"str1":"fu","str2":"ck"}

JSON字符串转Map

        /* JSON字符串转Map常用*/
        Map<String,Object> strMap =  JSONObject.parseObject(jsonStr);
        System.out.println("strMap:" + strMap);
//      打印的结果是:        strMap:{"str5":"wangwu","str6":"maliu","str3":"zhangsan","str4":"lisi"}

JSON对象转Map

其实就是json对象先转成json字符串,json字符串再转map

        /*JSON对象转map常用*/
        Map<String,Object> jsonToMap =  JSONObject.parseObject(jsonObject.toJSONString());
        System.out.println("jsonToMap:"+jsonToMap);
//      打印的结果是:        jsonToMap:{"str5":"wangwu","str6":"maliu","str3":"zhangsan","str4":"lisi"}

JSON对象转JSON字符串

        //JSON对象转JSON字符串
        String jsonToStr = jsonObject.toJSONString();
        System.out.println("jsonToStr=>"+jsonToStr);
//      打印的结果是:       jsonToStr=>{"str5":"wangwu","str6":"maliu","str3":"zhangsan","str4":"lisi"}

根据以上转换,不难得出三者之间的关系 (图丑,勿喷。)

为了方便记忆,可以换一种思维,

Map转jsonObject时,Map是主体,JSON代表的是Map【简称,JSON代表Map】;

jsonObject转Map时,jsonObject是主体,jsonObject代表的还是JSONObject【简称,我代表我自己】

Map与JSON的区别,我只知道是“=”与“:” 之间的区别。

        /* map转化JSON字符串常用 */
        Map<String,Object> testMap = new HashMap<>();
        testMap.put("str1","fu");
        testMap.put("str2","ck");
        String str = JSON.toJSONString(testMap);
        System.out.println("testMap的值:" + testMap);

//      打印的结果是:       testMap的值:{str1=fu, str2=ck}
        /* JSON字符串转JSON对象常用*/
        String jsonStr = "{\"str3\":\"zhangsan\",\"str4\":\"lisi\",\"str5\":\"wangwu\",\"str6\":\"maliu\"}";
        JSONObject jsonObject = JSONObject.parseObject(jsonStr);
        System.out.println("jsonObject:" + jsonObject);
//      打印的结果是:       jsonObject:{"str5":"wangwu","str6":"maliu","str3":"zhangsan","str4":"lisi"}

由打印结果可知,Map是”=“,jsonObject是”:“,

究竟用哪个,以实际情况确定。

IDEA功能快捷键

全局搜索:Ctrl + H

根据文件名搜索:Ctrl + Shift+ R/T

在某一个类中搜索:Ctrl + F

加注释【/**/】:Ctrl + Shift + / [两次使用,则是放开注释]

【// 】:Ctrl + / [两次使用,则是放开注释]

总结

到此这篇关于Java中Map与JSON数据之间互相转化的文章就介绍到这了,更多相关Map与JSON数据互相转化内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • idea不能搜索任何插件的问题解决

    idea不能搜索任何插件的问题解决

    本文主要介绍了idea不能搜索任何插件的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • SpringBoot实现定时发送邮件的三种方法案例详解

    SpringBoot实现定时发送邮件的三种方法案例详解

    这篇文章主要介绍了SpringBoot三种方法实现定时发送邮件的案例,Spring框架的定时任务调度功能支持配置和注解两种方式Spring Boot在Spring框架的基础上实现了继承,并对其中基于注解方式的定时任务实现了非常好的支持,本文给大家详细讲解,需要的朋友可以参考下
    2023-03-03
  • SpringBoot导入mail依赖报错问题解决

    SpringBoot导入mail依赖报错问题解决

    这篇文章主要介绍了SpringBoot导入mail依赖报错问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • 初步解析Java中AffineTransform类的使用

    初步解析Java中AffineTransform类的使用

    这篇文章主要介绍了Java中AffineTransform类的使用,AffineTransform类经常被用来处理图片,需要的朋友可以参考下
    2015-10-10
  • Java栈的应用之括号匹配算法实例分析

    Java栈的应用之括号匹配算法实例分析

    这篇文章主要介绍了Java栈的应用之括号匹配算法,结合实例形式分析了Java使用栈实现括号匹配算法的相关原理、操作技巧与注意事项,需要的朋友可以参考下
    2020-03-03
  • Spring 源码解析CommonAnnotationBeanPostProcessor

    Spring 源码解析CommonAnnotationBeanPostProcessor

    这篇文章主要为大家介绍了Spring 源码解析CommonAnnotationBeanPostProcessor示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • 深入理解JDK8中Stream使用

    深入理解JDK8中Stream使用

    Stream 是 Java8 中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。这篇文章主要介绍了JDK8中Stream使用解析,需要的朋友可以参考下
    2021-06-06
  • java中对象的比较equal、Comparble、Comparator的区别

    java中对象的比较equal、Comparble、Comparator的区别

    本文主要介绍了java中对象的比较equal、Comparble、Comparator的区别,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • SpringMVC执行过程详细讲解

    SpringMVC执行过程详细讲解

    MVC是一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个组件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑,MVC分层有助于管理和架构复杂的应用程序
    2022-08-08
  • 剑指Offer之Java算法习题精讲二叉树与N叉树

    剑指Offer之Java算法习题精讲二叉树与N叉树

    跟着思路走,之后从简单题入手,反复去看,做过之后可能会忘记,之后再做一次,记不住就反复做,反复寻求思路和规律,慢慢积累就会发现质的变化
    2022-03-03

最新评论