package com.ht.utils; 



import java.util.Map; 



import org.junit.Test; 



import com.alibaba.fastjson.JSON; 

import com.alibaba.fastjson.JSONObject; 



public class JsonToMapTest { 

 String str = "{\"0\":\"zhangsan\",\"1\":\"lisi\",\"2\":\"wangwu\",\"3\":\"maliu\"}"; 

  

 @Test 

 public void  JsonParse() { 

 // 第一种方式 

 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()); 

 } 

 } 

  

 @Test 

 public void  JsonParseObject() { 

 // 第二种方式 

 Map mapTypes = JSON.parseObject(str); 

 System.out.println("这个是用JSON类的parseObject来解析JSON字符串!!!"); 

 for (Object obj : mapTypes.keySet()) { 

 System.out.println("key为:" + obj + "值为:" + mapTypes.get(obj)); 

 } 

 } 

  

 @Test 

 public void  JsonParseObjectType() { 

 // 第三种方式 

 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)); 

 } 

 } 

  

 @Test 

 public void  JsonObjectParse() { 

 // 第四种方式 

 /** 

  * 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()); 

 } 

 } 

  

  

 @Test 

 public void  JsonObjectParseObject() { 

 // 第五种方式 

 /** 

  * JSONObject是Map接口的一个实现类 

  */ 

 JSONObject jsonObject = JSONObject.parseObject(str); 

 System.out.println("这个是用JSONObject的parseObject方法来解析JSON字符串!!!"); 

 for (Object map : jsonObject.entrySet()) { 

 System.out.println(((Map.Entry) map).getKey() + "  " + ((Map.Entry) map).getValue()); 

 } 

 } 

  

 @Test 

 public void  JsonObjectParseObjectType() { 

 // 第六种方式 

 /** 

  * JSONObject是Map接口的一个实现类 

  */ 

 Map mapObj = JSONObject.parseObject(str, Map.class); 

 System.out.println("这个是用JSONObject的parseObject方法并执行返回类型来解析JSON字符串!!!"); 

 for (Object map : mapObj.entrySet()) { 

 System.out.println(((Map.Entry) map).getKey() + "  " + ((Map.Entry) map).getValue()); 

 } 

 } 





}