经小伙伴的提醒,决定插播一期 json 对象基本操作的视频。由于我录视频没有很充分的前期准备,因为太费时间了,所以都是想到什么内容,打个腹稿,准备一下设备就开始喷
了。欢迎多提意见。
视频专题:
由于公众号视频长度限制,我分成了两个视频。一个是 json 对象创建和添加数据,一个是从 json 对象获取数据和格式化输出。第二个视频讲格式化输出的时候有个地方澄清一下,就是jsonStr = jsonStr.replaceAll("\\\\/", OR);
这行代码,主要是处理接口响应结果中包含\/\/
这种数据的。
中间提到的深浅拷贝和控制台输出方法的内容可以查看往期文章:
gitee 地址:https://gitee.com/fanapi/tester
package com.fun;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.fun.frame.SourceCode;
public class Fun extends SourceCode {
public static void main(String[] args) {
// JSONObject json = new JSONObject();
// json.put("2", 323333);
// json.put("22", "fdskjflsj");
// json.put("222", false);
// JSONObject jsonObject = new JSONObject();
// jsonObject.put("2", 3243);
// jsonObject.put("213", 213243);
// jsonObject.put("32", 321243);
// json.put("221", jsonObject);
// JSONArray array = new JSONArray();
// array.add(jsonObject.clone());
// array.add(jsonObject.clone());
// array.add(jsonObject.clone());
// json.put("array", array);
// output(json);
// output(json.toString());
String jsonstr = "{\"22\":\"fdskjflsj\",\"221\":{\"2\":3243,\"213\":213243,\"32\":321243},\"2\":323333,\"222\":false,\"array\":[{\"2\":3243,\"213\":213243,\"32\":321243},{\"2\":3243,\"213\":213243,\"32\":321243},{\"2\":3243,\"213\":213243,\"32\":321243}]}";
JSONObject jsonObject1 = JSON.parseObject(jsonstr);
jsonObject1.put("array", "1/2");
// output(jsonObject1.equals(json));
output(jsonObject1);
output(jsonObject1.getBooleanValue("222"));
output(jsonObject1.getJSONObject("221"));
}
}