• JSON字符串转换为Map


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

    1. package com.zkn.newlearn.json;  
    2.   
    3. import com.alibaba.fastjson.JSON;  
    4. import com.alibaba.fastjson.JSONObject;  
    5. import java.util.Map;  
    6.   
    7. /** 
    8.  * JSON字符串自动转换 
    9.  * Created by zkn on 2016/8/22. 
    10.  */  
    11. public class JsonToMapTest01 {  
    12.   
    13.     public static void main(String[] args){  
    14.   
    15.         String str = "{"0":"zhangsan","1":"lisi","2":"wangwu","3":"maliu"}";  
    16.         //第一种方式  
    17.         Map maps = (Map)JSON.parse(str);  
    18.         System.out.println("这个是用JSON类来解析JSON字符串!!!");  
    19.         for (Object map : maps.entrySet()){  
    20.             System.out.println(((Map.Entry)map).getKey()+"     " + ((Map.Entry)map).getValue());  
    21.         }  
    22.         //第二种方式  
    23.         Map mapTypes = JSON.parseObject(str);  
    24.         System.out.println("这个是用JSON类的parseObject来解析JSON字符串!!!");  
    25.         for (Object obj : mapTypes.keySet()){  
    26.             System.out.println("key为:"+obj+"值为:"+mapTypes.get(obj));  
    27.         }  
    28.         //第三种方式  
    29.         Map mapType = JSON.parseObject(str,Map.class);  
    30.         System.out.println("这个是用JSON类,指定解析类型,来解析JSON字符串!!!");  
    31.         for (Object obj : mapType.keySet()){  
    32.             System.out.println("key为:"+obj+"值为:"+mapType.get(obj));  
    33.         }  
    34.         //第四种方式  
    35.         /** 
    36.          * JSONObject是Map接口的一个实现类 
    37.          */  
    38.         Map json = (Map) JSONObject.parse(str);  
    39.         System.out.println("这个是用JSONObject类的parse方法来解析JSON字符串!!!");  
    40.         for (Object map : json.entrySet()){  
    41.             System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());  
    42.         }  
    43.         //第五种方式  
    44.         /** 
    45.          * JSONObject是Map接口的一个实现类 
    46.          */  
    47.         JSONObject jsonObject = JSONObject.parseObject(str);  
    48.         System.out.println("这个是用JSONObject的parseObject方法来解析JSON字符串!!!");  
    49.         for (Object map : json.entrySet()){  
    50.             System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());  
    51.         }  
    52.         //第六种方式  
    53.         /** 
    54.          * JSONObject是Map接口的一个实现类 
    55.          */  
    56.         Map mapObj = JSONObject.parseObject(str,Map.class);  
    57.         System.out.println("这个是用JSONObject的parseObject方法并执行返回类型来解析JSON字符串!!!");  
    58.         for (Object map: json.entrySet()){  
    59.             System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());  
    60.         }  
    61.         String strArr = "{{"0":"zhangsan","1":"lisi","2":"wangwu","3":"maliu"}," +  
    62.                 "{"00":"zhangsan","11":"lisi","22":"wangwu","33":"maliu"}}";  
    63.        // JSONArray.parse()  
    64.         System.out.println(json);  
    65.     }  
    66. }  



总结


JSON实际上是实现Map接口的子类,因此开发中要传入的参数是java.util.Map格式的实例,可以直接传JSONObject对象
  • 相关阅读:
    Python学习笔记21:数据库操作(sqlite3)
    JAVA的extends使用方法
    thinkphp5的Illegal string offset 'id'错误
    thinkphp5项目--个人博客(五)
    语法错误: unexpected ''); ?></span></span></h2> ' (T_CONSTANT_ENCAPSED_STRING), expecting ',' or ';'
    thinkphp5.0的验证码安装和相关错误
    thinkphp5项目--个人博客(四)
    thinkphp5项目--个人博客(三)
    NAS是什么
    百度编辑器简介及如何使用
  • 原文地址:https://www.cnblogs.com/jpfss/p/8625526.html
  • Copyright © 2020-2023  润新知