/** ????* 对jsonObject对象进行key的获取 ????* @param jsonObject ????*/ ???public ArrayList<String> jsonKeyRecursion(JSONObject jsonObject,ArrayList urlArr){ ???????//创建urlArr用来存放url路径values ???????JSONObject littleJson = null; ???????//对jsonObject中的url(key)的value进行更替, 加入授权请求连接// ???????String key = null; ???????for(String key : jsonObject.keySet()){ ???????????System.out.println("key : "+key); ???????????//返回新的button下的json串 ???????????littleJson = (JSONObject) jsonObject.get(key); ???????????System.out.println("littleJson : "+littleJson); ???????????if(key.equals("url")){ ???????????????urlArr.add(littleJson); ???????????????System.out.println("add one littleJson to array : "+littleJson); ???????????} ???????} ???????boolean url = littleJson.containsKey(""); ???????System.out.println("url:"+url); ???????//这里的littleJson是JSONArray了,所以传入失败 ???????jsonKeyRecursion(littleJson,urlArr);// ???????Set<String> strings = littleJson.keySet();//// ???????littleJson// ???????System.out.println("strings:"+strings); // 1. button// ???????Set<Map.Entry<String, Object>> entries = littleJson.entrySet();// ???????Object[] objects = entries.toArray();// ???????System.out.println(objects);// ???????System.out.println("entries:"+entries); // 1. [button=[{"name":"今日歌曲","sub_button":[],"type":"click","key ...// ???????Iterator<Map.Entry<String, Object>> iterator = entries.iterator();// ???????if(iterator.hasNext()){// ???????????System.out.println("iterator.next():"+iterator.next());// ???????} ???????return urlArr; ???}
并没有获取复杂的嵌套json数据的很好的方法么
待解析
[fastjson] - fastjson中 JSONObject 和 JSONArray
原文地址:https://www.cnblogs.com/ukzq/p/10082207.html