溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Java中Map與JSON數(shù)據(jù)之間怎么互相轉(zhuǎn)化

發(fā)布時間:2023-04-15 10:52:04 來源:億速云 閱讀:170 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹了Java中Map與JSON數(shù)據(jù)之間怎么互相轉(zhuǎn)化的相關(guān)知識,內(nèi)容詳細(xì)易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Java中Map與JSON數(shù)據(jù)之間怎么互相轉(zhuǎn)化文章都會有所收獲,下面我們一起來看看吧。

map轉(zhuǎn)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轉(zhuǎn)化JSON字符串常用 */
        Map testMap = new HashMap<>();
        testMap.put("str1","fu");
        testMap.put("str2","ck");
        String str = JSON.toJSONString(testMap);
        System.out.println("testMap的值:" + testMap);

//      打印的結(jié)果是:       testMap的值:{str1=fu, str2=ck}
    }
}

JSON字符串轉(zhuǎn)JSON對象

        /* JSON字符串轉(zhuǎn)JSON對象常用*/
        String jsonStr = "{\"str3\":\"zhangsan\",\"str4\":\"lisi\",\"str5\":\"wangwu\",\"str6\":\"maliu\"}";
        JSONObject jsonObject = JSONObject.parseObject(jsonStr);
        System.out.println("jsonObject:" + jsonObject);
//      打印的結(jié)果是:       jsonObject:{"str5":"wangwu","str6":"maliu","str3":"zhangsan","str4":"lisi"}

Map轉(zhuǎn)JSON對象

由上面兩條轉(zhuǎn)化可知,map先轉(zhuǎn)成JSON字符串,再由JSON字符串轉(zhuǎn)化成JSON對象

        /*Map轉(zhuǎn)JSON對象常用 */
        JSONObject JSONObj = JSONObject.parseObject(JSON.toJSONString(testMap));
        System.out.println("JSONObj:" + JSONObj);
//      打印的結(jié)果是:        JSONObj:{"str1":"fu","str2":"ck"}

JSON字符串轉(zhuǎn)Map

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

JSON對象轉(zhuǎn)Map

其實(shí)就是json對象先轉(zhuǎn)成json字符串,json字符串再轉(zhuǎn)map

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

JSON對象轉(zhuǎn)JSON字符串

        //JSON對象轉(zhuǎn)JSON字符串
        String jsonToStr = jsonObject.toJSONString();
        System.out.println("jsonToStr=>"+jsonToStr);
//      打印的結(jié)果是:       jsonToStr=>{"str5":"wangwu","str6":"maliu","str3":"zhangsan","str4":"lisi"}

根據(jù)以上轉(zhuǎn)換,不難得出三者之間的關(guān)系 

Java中Map與JSON數(shù)據(jù)之間怎么互相轉(zhuǎn)化

為了方便記憶,可以換一種思維,

Map轉(zhuǎn)jsonObject時,Map是主體,JSON代表的是Map【簡稱,JSON代表Map】;

jsonObject轉(zhuǎn)Map時,jsonObject是主體,jsonObject代表的還是JSONObject【簡稱,我代表我自己】

Map與JSON的區(qū)別,我只知道是“=”與“:” 之間的區(qū)別。

        /* map轉(zhuǎn)化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);

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

由打印結(jié)果可知,Map是”=“,jsonObject是”:“,

究竟用哪個,以實(shí)際情況確定。

IDEA功能快捷鍵

全局搜索:Ctrl+H

根據(jù)文件名搜索:Ctrl+Shift+R/T

在某一個類中搜索:Ctrl+F

加注釋【/**/】:Ctrl+Shift+/[兩次使用,則是放開注釋]

【// 】:Ctrl+/[兩次使用,則是放開注釋]

關(guān)于“Java中Map與JSON數(shù)據(jù)之間怎么互相轉(zhuǎn)化”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“Java中Map與JSON數(shù)據(jù)之間怎么互相轉(zhuǎn)化”知識都有一定的了解,大家如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI