好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

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

map

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

map转JSON字符串

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

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对象

?

1

2

3

4

5

         /* 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对象

?

1

2

3

4

         /*Map转JSON对象常用 */

         JSONObject JSONObj = JSONObject.parseObject(JSON.toJSONString(testMap));

         System.out.println( "JSONObj:" + JSONObj);

//      打印的结果是:        JSONObj:{"str1":"fu","str2":"ck"}

JSON字符串转Map

?

1

2

3

4

         /* 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

?

1

2

3

4

         /*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字符串

?

1

2

3

4

         //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的区别,我只知道是[=]与[:] 之间的区别。

?

1

2

3

4

5

6

7

8

9

10

11

12

13

         /* 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数据互相转化内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

原文链接:https://blog.csdn.net/weixin_42684369/article/details/124324729

查看更多关于Java中Map与JSON数据之间的互相转化的详细内容...

  阅读:31次