如何把JSON对象转为map对象呢?
JSON 对象保存在大括号内。就像在JavaScript中, 对象可以保存多个 键/值 对。Map对象保存键/值对,是键/值对的集合。任何值(对象或者原始值) 都可以作为一个键或一个值。Object结构提供了“字符串—值”的对应,Map结构提供了“值—值”的对应。
javascript将JSON对象转为map对象可以利用阿里巴巴封装的FastJSON来转换。有多种方式,如使用JSON类的parseObject来解析JSON字符串实现转换、用JSONObject类的parse方法来解析JSON字符串等。
javascript将JSON对象转为map对象实例:
- 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);
- }
- }
网友评论文明上网理性发言 已有1人参与
发表评论:
评论列表