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

    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);  
        }  
    } 
    View Code

    总结



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

  • 相关阅读:
    蛇形填数(算法竞赛入门经典)
    35. Search Insert Position(LeetCode)
    70. Climbing Stairs(LeetCode)
    循环结构程序设计(算法竞赛入门经典)课后题
    阶乘之和(算法竞赛入门经典)[求余问题]
    有关int范围的例题(算法竞赛入门经典)
    矩阵行成列,列成行
    543. Diameter of Binary Tree(LeetCode)
    415. Add Strings(LeetCode)
    121. Best Time to Buy and Sell Stock(LeetCode)
  • 原文地址:https://www.cnblogs.com/coder-wzr/p/11465698.html
Copyright © 2011-2022 走看看