java json hashmap_[转]Json字符串和map和HashMap之间的转换

需要导入alibaba.fastJson

maven中的依赖为

com.alibaba

fastjson

1.2.47

导入之后就可以愉快滴使用 了。

例子如下

package test;

import java.util.HashMap;

import java.util.Map;

import org.apache.commons.collections.map.HashedMap;

import com.alibaba.fastjson.JSON;

public class JsonTest {

public static void main(String[] args){

String params="{\"version\":\"1.0\",\"charset\":\"UTF-8\",\"sign\":\"f94b7eb96d529bfe5b28d57288dd5b4ffb576c2ff98b2fa4ff2be6f70ab8b6e7\",\"signType\":\"SHA-256\",\"reqData\":{\"nextKeyValue\":\"\",\"dateTime\":\"20160825113210\",\"operatorNo\":\"9999\",\"merchantNo\":\"000054\",\"date\":\"20160116\",\"branchNo\":\"0755\"}}";

HashMap hashMap=JSON.parseObject(params, HashMap.class);

System.err.println("hashmap="+hashMap);

Map map=JSON.parseObject(params, Map.class);

System.out.println("map="+map);

}

}

结果

hashmap={sign=f94b7eb96d529bfe5b28d57288dd5b4ffb576c2ff98b2fa4ff2be6f70ab8b6e7, signType=SHA-256, reqData={"nextKeyValue":"","dateTime":"20160825113210","operatorNo":"9999","merchantNo":"000054","branchNo":"0755","date":"20160116"}, charset=UTF-8, version=1.0}

map={sign=f94b7eb96d529bfe5b28d57288dd5b4ffb576c2ff98b2fa4ff2be6f70ab8b6e7, signType=SHA-256, reqData={"nextKeyValue":"","dateTime":"20160825113210","operatorNo":"9999","merchantNo":"000054","branchNo":"0755","date":"20160116"}, charset=UTF-8, version=1.0}

当然,JSON.parseObject(String,Clazz)只是其中的一个。

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

}

}

————————————————

版权声明:本文为CSDN博主「张超帅」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/weixin_38070406/article/details/80907581

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值