如何把JSON对象转为map对象呢?

JSON 对象保存在大括号内。就像在JavaScript中, 对象可以保存多个 键/值 对。Map对象保存键/值对,是键/值对的集合。任何值(对象或者原始值) 都可以作为一个键或一个值。Object结构提供了“字符串—值”的对应,Map结构提供了“值—值”的对应。

javascript将JSON对象转为map对象可以利用阿里巴巴封装的FastJSON来转换。有多种方式,如使用JSON类的parseObject来解析JSON字符串实现转换、用JSONObject类的parse方法来解析JSON字符串等。

javascript将JSON对象转为map对象实例:

packagecom.zkn.newlearn.json;
importcom.alibaba.fastjson.JSON;
importcom.alibaba.fastjson.JSONObject;
importjava.util.Map;
/**
*JSON字符串自动转换
*Createdbyzknon2016/8/22.
*/
publicclassJsonToMapTest01{
publicstaticvoidmain(String[]args){
Stringstr=“{“0”:“zhangsan”,“1”:“lisi”,“2”:“wangwu”,“3”:“maliu”}”;
//第一种方式
Mapmaps=(Map)JSON.parse(str);
System.out.println(“这个是用JSON类来解析JSON字符串!!!”);
for(Objectmap:maps.entrySet()){
System.out.println(((Map.Entry)map).getKey()+“”+((Map.Entry)map).getValue());
}
//第二种方式
MapmapTypes=JSON.parseObject(str);
System.out.println(“这个是用JSON类的parseObject来解析JSON字符串!!!”);
for(Objectobj:mapTypes.keySet()){
System.out.println(“key为:”+obj+“值为:”+mapTypes.get(obj));
}
//第三种方式
MapmapType=JSON.parseObject(str,Map.class);
System.out.println(“这个是用JSON类,指定解析类型,来解析JSON字符串!!!”);
for(Objectobj:mapType.keySet()){
System.out.println(“key为:”+obj+“值为:”+mapType.get(obj));
}
//第四种方式
/**
*JSONObject是Map接口的一个实现类
*/
Mapjson=(Map)JSONObject.parse(str);
System.out.println(“这个是用JSONObject类的parse方法来解析JSON字符串!!!”);
for(Objectmap:json.entrySet()){
System.out.println(((Map.Entry)map).getKey()+“”+((Map.Entry)map).getValue());
}
//第五种方式
/**
*JSONObject是Map接口的一个实现类
*/
JSONObjectjsonObject=JSONObject.parseObject(str);
System.out.println(“这个是用JSONObject的parseObject方法来解析JSON字符串!!!”);
for(Objectmap:json.entrySet()){
System.out.println(((Map.Entry)map).getKey()+“”+((Map.Entry)map).getValue());
}
//第六种方式
/**
*JSONObject是Map接口的一个实现类
*/
MapmapObj=JSONObject.parseObject(str,Map.class);
System.out.println(“这个是用JSONObject的parseObject方法并执行返回类型来解析JSON字符串!!!”);
for(Objectmap:json.entrySet()){
System.out.println(((Map.Entry)map).getKey()+“”+((Map.Entry)map).getValue());
}
StringstrArr=“{{“0”:“zhangsan”,“1”:“lisi”,“2”:“wangwu”,“3”:“maliu”},”+
“{“00”:“zhangsan”,“11”:“lisi”,“22”:“wangwu”,“33”:“maliu”}}”;
//JSONArray.parse()
System.out.println(json);
}
}