zoukankan      html  css  js  c++  java
  • JSON字符串转换为Map

    本文是利用阿里巴巴封装的FastJSON来转换json字符串的。例子如下:

    package com.zkn.newlearn.json;  
      
    import com.alibaba.fastjson.JSON;  
    import com.alibaba.fastjson.JSONObject;  
    import java.util.Map;  
      
    /** 
     * JSON字符串自动转换 
     * Created by zkn on 2016/8/22. 
     */  
    public class JsonToMapTest01 {  
      
        public static void main(String[] args){  
      
            String str = "{"0":"zhangsan","1":"lisi","2":"wangwu","3":"maliu"}";  
            //第一种方式  
            Map maps = (Map)JSON.parse(str);  
            System.out.println("这个是用JSON类来解析JSON字符串!!!");  
            for (Object map : maps.entrySet()){  
                System.out.println(((Map.Entry)map).getKey()+"     " + ((Map.Entry)map).getValue());  
            }  
            //第二种方式  
            Map mapTypes = JSON.parseObject(str);  
            System.out.println("这个是用JSON类的parseObject来解析JSON字符串!!!");  
            for (Object obj : mapTypes.keySet()){  
                System.out.println("key为:"+obj+"值为:"+mapTypes.get(obj));  
            }  
            //第三种方式  
            Map mapType = JSON.parseObject(str,Map.class);  
            System.out.println("这个是用JSON类,指定解析类型,来解析JSON字符串!!!");  
            for (Object obj : mapType.keySet()){  
                System.out.println("key为:"+obj+"值为:"+mapType.get(obj));  
            }  
            //第四种方式  
            /** 
             * JSONObject是Map接口的一个实现类 
             */  
            Map json = (Map) JSONObject.parse(str);  
            System.out.println("这个是用JSONObject类的parse方法来解析JSON字符串!!!");  
            for (Object map : json.entrySet()){  
                System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());  
            }  
            //第五种方式  
            /** 
             * JSONObject是Map接口的一个实现类 
             */  
            JSONObject jsonObject = JSONObject.parseObject(str);  
            System.out.println("这个是用JSONObject的parseObject方法来解析JSON字符串!!!");  
            for (Object map : json.entrySet()){  
                System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());  
            }  
            //第六种方式  
            /** 
             * JSONObject是Map接口的一个实现类 
             */  
            Map mapObj = JSONObject.parseObject(str,Map.class);  
            System.out.println("这个是用JSONObject的parseObject方法并执行返回类型来解析JSON字符串!!!");  
            for (Object map: json.entrySet()){  
                System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());  
            }  
            String strArr = "{{"0":"zhangsan","1":"lisi","2":"wangwu","3":"maliu"}," +  
                    "{"00":"zhangsan","11":"lisi","22":"wangwu","33":"maliu"}}";  
           // JSONArray.parse()  
            System.out.println(json);  
        }  
    }  

    总结

    JSON实际上是实现Map接口的子类,因此开发中要传入的参数是java.util.Map格式的实例,可以直接传JSONObject对象

    转载至:https://www.cnblogs.com/jpfss/p/8625526.html

  • 相关阅读:
    软件测试人员的年终绩效考核怎么应对
    收藏
    顶踩组件 前后两版
    订阅组件
    hdu 1963 Investment 完全背包
    hdu 4939 Stupid Tower Defense 动态规划
    hdu 4405 Aeroplane chess 动态规划
    cf 414B Mashmokh and ACM 动态规划
    BUPT 202 Chocolate Machine 动态规划
    hdu 3853 LOOPS 动态规划
  • 原文地址:https://www.cnblogs.com/mh-study/p/11896303.html
Copyright © 2011-2022 走看看