您好,登錄后才能下訂單哦!
這篇文章主要介紹了Java中Map與JSON數(shù)據(jù)之間怎么互相轉(zhuǎn)化的相關(guān)知識,內(nèi)容詳細(xì)易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Java中Map與JSON數(shù)據(jù)之間怎么互相轉(zhuǎn)化文章都會有所收獲,下面我們一起來看看吧。
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對象常用*/ 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"}
由上面兩條轉(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常用*/ Map<String,Object> strMap = JSONObject.parseObject(jsonStr); System.out.println("strMap:" + strMap); // 打印的結(jié)果是: strMap:{"str5":"wangwu","str6":"maliu","str3":"zhangsan","str4":"lisi"}
其實(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字符串 String jsonToStr = jsonObject.toJSONString(); System.out.println("jsonToStr=>"+jsonToStr); // 打印的結(jié)果是: jsonToStr=>{"str5":"wangwu","str6":"maliu","str3":"zhangsan","str4":"lisi"}
根據(jù)以上轉(zhuǎn)換,不難得出三者之間的關(guā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í)際情況確定。
全局搜索: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è)資訊頻道。
免責(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)容。