JSON字符串转换为Map
Posted nemowang1996
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSON字符串转换为Map相关的知识,希望对你有一定的参考价值。
转自:https://blog.csdn.net/zknxx/article/details/52281220
本文是利用阿里巴巴封装的FastJSON来转换json字符串的。例子如下:
1 import com.alibaba.fastjson.JSON; 2 import com.alibaba.fastjson.JSONObject; 3 import java.util.Map; 4 5 /** 6 * JSON字符串自动转换 7 * Created by zkn on 2016/8/22. 8 */ 9 public class JsonToMapTest01 10 11 public static void main(String[] args) 12 13 String str = "\"0\":\"zhangsan\",\"1\":\"lisi\",\"2\":\"wangwu\",\"3\":\"maliu\""; 14 //第一种方式 15 Map maps = (Map)JSON.parse(str); 16 System.out.println("这个是用JSON类来解析JSON字符串!!!"); 17 for (Object map : maps.entrySet()) 18 System.out.println(((Map.Entry)map).getKey()+" " + ((Map.Entry)map).getValue()); 19 20 //第二种方式 21 Map mapTypes = JSON.parseObject(str); 22 System.out.println("这个是用JSON类的parseObject来解析JSON字符串!!!"); 23 for (Object obj : mapTypes.keySet()) 24 System.out.println("key为:"+obj+"值为:"+mapTypes.get(obj)); 25 26 //第三种方式 27 Map mapType = JSON.parseObject(str,Map.class); 28 System.out.println("这个是用JSON类,指定解析类型,来解析JSON字符串!!!"); 29 for (Object obj : mapType.keySet()) 30 System.out.println("key为:"+obj+"值为:"+mapType.get(obj)); 31 32 //第四种方式 33 /** 34 * JSONObject是Map接口的一个实现类 35 */ 36 Map json = (Map) JSONObject.parse(str); 37 System.out.println("这个是用JSONObject类的parse方法来解析JSON字符串!!!"); 38 for (Object map : json.entrySet()) 39 System.out.println(((Map.Entry)map).getKey()+" "+((Map.Entry)map).getValue()); 40 41 //第五种方式 42 /** 43 * JSONObject是Map接口的一个实现类 44 */ 45 JSONObject jsonObject = JSONObject.parseObject(str); 46 System.out.println("这个是用JSONObject的parseObject方法来解析JSON字符串!!!"); 47 for (Object map : json.entrySet()) 48 System.out.println(((Map.Entry)map).getKey()+" "+((Map.Entry)map).getValue()); 49 50 //第六种方式 51 /** 52 * JSONObject是Map接口的一个实现类 53 */ 54 Map mapObj = JSONObject.parseObject(str,Map.class); 55 System.out.println("这个是用JSONObject的parseObject方法并执行返回类型来解析JSON字符串!!!"); 56 for (Object map: json.entrySet()) 57 System.out.println(((Map.Entry)map).getKey()+" "+((Map.Entry)map).getValue()); 58 59 String strArr = "\"0\":\"zhangsan\",\"1\":\"lisi\",\"2\":\"wangwu\",\"3\":\"maliu\"," + 60 "\"00\":\"zhangsan\",\"11\":\"lisi\",\"22\":\"wangwu\",\"33\":\"maliu\""; 61 // JSONArray.parse() 62 System.out.println(json); 63 64
以上是关于JSON字符串转换为Map的主要内容,如果未能解决你的问题,请参考以下文章