java之json串如何转Map
生活随笔
收集整理的這篇文章主要介紹了
java之json串如何转Map
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
這篇“java之json串如何轉Map”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“java之json串如何轉Map”文章吧。
1.FastJSON方法
Fastjson是阿里巴巴封裝的,性能更快。
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);
}
}
2.Collectors.toMap
json字符串其實總得來說就是一個key-value的形式,應該是滿足了最終想要的Map<String, List<Unit>>的結構了,所以直接一個Collectors.toMap就搞定了。
Map<String,List<Unit>>result=JSONObject.parseObject(s) .entrySet().stream() .collect(Collectors.toMap(Map.Entry::getKey,entry->JSONObject.parseArray(String.valueOf(entry.getValue()),Unit.class)));
注意s就是你那個json字符串。
總結
以上是生活随笔為你收集整理的java之json串如何转Map的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 从Wiesloch火车站到SAP Wal
- 下一篇: windows比特彗星端口阻塞怎么解决