(JSON转换)String与JSONObject、JSONArray、JAVA对象和List 的相互转换


一、图解(使用的FastJSON工具库)

 

二、详解(以 String与对象相互转换 为例)

1、JSONString 与 JSONObject 相互转化

(1)JSONString ==> JSONObject

String jsonStr = "{\"key1\":\"value1\"}";   // 反斜杠是java中用于转义特殊字符 " 的
JSONObject jsonObject = JSON.parseObject(jsonStr);

(2)JSONObject ==> JSONString

String jsonStr = jsonObject.toJSONString();

2、JSONString 与 JAVA对象 相互转化

(1)JSONString  ==> JAVA对象

String jsonStr = "{\"name\":\"张三\"}";   // 反斜杠是java中用于转移特殊字符 " 的
User user = JSON.parseObject(jsonStr, User.class);

(2) JAVA对象 ==> JSONString 

String jsonStr = JSON.toJSONString(user);

三、扩展

1、泛型的反序列化(使用 TypeReference 传入类型信息)

Map map = new HashMap();
map.put("key1", "One");
map.put("key2", "Two");

String mapJson = JSON.toJSONString(map); // 转 JSONString

Map map = JSON.parseObject(mapJson, new TypeReference>(){}); // 泛型反序列化

小编不易,安装完,可否来个三连,赏个赞也是好的呀!!! 

博客参考:

java中字符串String格式转化成json格式:https://www.jianshu.com/p/8cd17f89e856

json和对象、list互转:

List转JSONArray和JSONArray转List:https://blog.csdn.net/weixin_42365088/article/details/99761931