map转Json和List转JsonArray

//Map<String,Object>转 Json
    private JSONObject getJsonObj(Map paras) {
        JSONObject jsonObj = new JSONObject();
        for (Object key : paras.keySet()) {
            Object val = paras.get(key);
            if (val==null)
                jsonObj.put(key.toString(), val);
            else if (val instanceof Map) {
                jsonObj.put(key.toString(), getJsonObj((Map) val));
            } else if (val instanceof List) {
                jsonObj.put(key.toString(), getJsonArr((List) val));
            } else if (val.getClass().isArray()) {
                List<Object> listObj = Arrays.asList(val);
                jsonObj.put(key.toString(), getJsonArr(listObj));
            } else {
                jsonObj.put(key.toString(), val);
            }
        }
        return jsonObj;
    }

    //List<Object>转 JsonArr
    private JSONArray getJsonArr(List paras) {
        JSONArray jsonArr = new JSONArray();
        for (Object val: paras) {
             if (val==null)
                continue;
            if (val instanceof Map) {
                jsonArr.add(getJsonObj((Map) val));
            } else if (val instanceof List) {
                jsonArr.add(getJsonArr((List) val));
            } else if (val.getClass().isArray()) {
                List<Object> listObj = Arrays.asList(val);
                jsonArr.add(getJsonArr(listObj));
            } else {
                jsonArr.add(val);
            }
        }
        return jsonArr;
    }

 

posted @ 2025-07-13 08:29  山䂥进城  阅读(24)  评论(0)    收藏  举报