广告
返回顶部
首页 > 资讯 > 后端开发 > JAVA >fastjson json字符串转map的几种方法
  • 698
分享到

fastjson json字符串转map的几种方法

jsonjavafastjsonmap字符串 2023-09-03 05:09:23 698人浏览 安东尼
摘要

import com.alibaba.fastJSON.jsON;import com.alibaba.fastjson.JSONObject;import java.util.Map;public class JsonStr2Map {

import com.alibaba.fastJSON.jsON;import com.alibaba.fastjson.JSONObject;import java.util.Map;public class JsonStr2Map {    public static void main(String[] args){        String str = "{\"key1\":\"悟空\",\"key2\":\"八戒\",\"key3\":\"沙僧\"}";        //第一种        Map maps = (Map)JSON.parse(str);        //第二种        Map mapTypes = JSON.parseObject(str);        //第三种        Map mapType = JSON.parseObject(str,Map.class);        //第四种        Map json = (Map) JSONObject.parse(str);        //第五种        JSONObject jsonObject = JSONObject.parseObject(str);        //第六种        Map mapObj = JSONObject.parseObject(str,Map.class);        Map maps = (Map)JSON.parse(str);        for (Object map : maps.entrySet()){            System.out.println(((Map.Entry)map).geTKEy()+"     " + ((Map.Entry)map).getValue());        }        Map mapTypes = JSON.parseObject(str);        for (Object obj : mapTypes.keySet()){            System.out.println("key为:"+obj+"值为:"+mapTypes.get(obj));        }        Map mapType = JSON.parseObject(str,Map.class);        for (Object obj : mapType.keySet()){            System.out.println("key为:"+obj+"值为:"+mapType.get(obj));        }        Map json = (Map) JSONObject.parse(str);        for (Object map : json.entrySet()){            System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());        }        JSONObject jsonObject = JSONObject.parseObject(str);        for (Object map : json.entrySet()){            System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());        }        Map mapObj = JSONObject.parseObject(str,Map.class);        for (Object map: json.entrySet()){            System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());        }    }}

参考:fastjson将json字符串转化成map的五种方法 - 何其小静 - 博客园 (cnblogs.com)

源码

第一种
Map maps = (Map)JSON.parse(str);

public abstract class JSON implements JSONStreamAware, JSONAware {    public static Object parse(String text) {        return parse(text, DEFAULT_PARSER_FEATURE);    }}

第二种
Map mapTypes = JSON.parseObject(str);

public abstract class JSON implements JSONStreamAware, JSONAware {    public static JSONObject parseObject(String text) {        Object obj = parse(text);        if (obj instanceof JSONObject) {            return (JSONObject)obj;        } else {            try {                return (JSONObject)toJSON(obj);            } catch (RuntimeException var3) {                throw new JSONException("can not cast to JSONObject.", var3);            }        }    }}

JSONObject实现了Map,所以可以用Map接收 

public class JSONObject extends JSON implements Map, Cloneable, Serializable, InvocationHandler {

来源地址:https://blog.csdn.net/u011149152/article/details/130092332

--结束END--

本文标题: fastjson json字符串转map的几种方法

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

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

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

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

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作