Java中使用JSONTokener判断接口返回字符串是JSONObject还是JSONArray

今天在接口对接中,遇到一个问题,对方接口返回的JSONString,类型不确定,所以需要先做判断再进行处理。查阅资料后使用JSONTokener可进行处理,特此记录。

            String ret = orderapi.invoke(apiparam.toString());
                    
                    Object object = new JSONTokener(ret).nextValue();
                    
                    //判断返回数据是JSONArray还是JSONObject
                    if(object instanceof JSONObject){
                        retJson = (JSONObject)object;
                    }else{
                        JSONArray retArray = (JSONArray)object;
                        retJson = (JSONObject) retArray.get(0);
                    }

注:此处使用的是net.sf.json包中的JSON工具。

相关推荐