Fastjson中getJSONObject()与getJSONArray()的使用
测试JSON串:
{ "package": { "List1": { "errorCode": "0", "errorMsg": "Success", "receiverTradeNum": "" }, "List2": [ { "medicalNum": "15XXXXXX", "queryDate": "YYYYMMDD", "name": "XXX", "authorizationNum": "xxxxx", "pageNum": "1" } ] } }
目的:获取medicalNum的值
实现:
JSONObject packageJsonObject = jsonObj.getJSONObject("package"); // 定位到package json对象 JSONArray bodyJsonArray = packageJsonObject.getJSONArray("body"); //采用getJSONArray方法, 定位到body json集合 JSONObject targetJsonObject = bodyJsonArray.getJSONObject(0); // 定位到目标json对象 final String medicalNum = targetJsonObject.getString("medicalNum"); // 就诊流水号 System.out.println("----------------------"+medicalNum+"----------------------");
2021.10.23 所遇到一个问题,无法从JSONObiect的对象获取一个Type(Type为1或者0)值,抛空指针异常
解决:选错了get获取的方法错误选择了getJSONObject,因为所需要获取的仅仅是一个值,应该选择getString
1,JSONObject
指的是Json对象,就是一个键对应一个值,使用的是大括号{ },如:{key:value}
2,JSONArray
指的是Json数组,使用中括号[ ],只不过数组里面的项也是json键值对格式的
两者特点就是,Json对象中添加的是键值对,JSONArray中添加的是Json对象
JSONObject Json = new JSONObject(); JSONArray JsonArray = new JSONArray(); Json.put("key", "value");//JSONObject对象中添加键值对 JsonArray.add(Json);//将JSONObject对象添加到Json数组中
本文来自博客园,作者:迷糊桃,转载请注明原文链接:https://www.cnblogs.com/mihutao/p/15399256.html