JSON,JSONObject,JSONArray知识点归纳

1、认识json

JSON是一种取代XML的数据结构,和xml相比,它更小巧但描述能力却不差,由于它的小巧所以网络传输数据将减少更多流量从而加快速度。

JSON就是一串字符串 只不过元素会使用特定的符号标注。

{} 双括号表示对象

[] 中括号表示数组

“” 双引号内是属性或值

冒号:表示后者是前者的值(这个值可以是字符串、数字、也可以是另一个数组或对象)

所以 {“name”: “Michael”} 可以理解为是一个包含name为Michael的对象

而[{“name”: “Michael”},{“name”: “Jerry”}]就表示包含两个对象的数组

当然了,你也可以使用{“name”:[“Michael”,“Jerry”]}来简化上面一部,这是一个拥有一个name数组的对象

2、JSONArray与JSONObject的区别
简单来说一个是对象{},一个是对象数组[{}.{}]
参考文章:

https://blog.csdn.net/qq_32253371/article/details/78083391

3、JSONObject和JsonObject的区别

https://www.tinymind.net.cn/articles/e064a1e72fcf56

4、阿里巴巴jsonObject的常用方法
参考文章:亲测

https://blog.csdn.net/tangthh123/article/details/100800595

5、例子
{“requestId”:null,“success”:true,“business”:null,“errorCode”:null,“errorMessage”:null,“params”:null,“date”:null,“version”:null,“obj”:{“serviceList”:[{“serviceCode”:“22”,“serviceDesc”:“改自取-网点”,“enable”:false,“serviceStatus”:“0”,“awsmId”:null,“cusId”:null,“reasons”:[{“reasonCode”:“9-40-0”,“desc”:“根据渠道和发起方判断,当前为ASR寄方,因此不允许发起改自取-网点。”}]}}

以这个json字符串为例:
//转划为对象接受
acceptableResp = JSONObject.parseObject(jsonObject.getString(“obj”), AcceptableResp.class);
//获取对抗的key,value
JSONObject jsonObject = JSONObject.parseObject(feeResult);//feeResult是字符串
String obj = jsonObject.getString(“obj”);
//转化为list,obj是一个list数组返回 LIst
feeResp = (List) JSONObject.parseArray(obj, FeeResp.class);

你可能感兴趣的:(个人成长专栏)