1.array<map<string,array<string>>> 转 json字符串

package com.java;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONException;
import com.alibaba.fastjson.JSONObject;
import org.apache.hadoop.hive.ql.exec.UDF;
import java.util.*;

public class MyArrayToJsonUdf extends UDF{
    public  String evaluate(ArrayList<Map<String, ArrayList<String>>> list) {
        String jsonArrayStr = null;
        if(list != null && list.size() != 0){
            JSONArray jsonArray = new JSONArray();
            JSONObject jsonObject = null;
            String value = "";
            for(Map<String, ArrayList<String>> map : list) {
                jsonObject = new JSONObject();
                Set<String> set = map.keySet();
                for(String key : set) {
                    ArrayList<String> value1 = map.get(key);
                    value = value1.toString();
                    if(value !=null){
                        try {
                            jsonObject.put(key, value);
                        } catch (JSONException e) {
                            e.printStackTrace();
                        }
                    }
                }
                if(jsonObject.size() != 0) {
                    jsonArray.add(jsonObject);
                }
            }
            jsonArrayStr = jsonArray.toString();
        }
        return jsonArrayStr;
    }
}

转载实用帖子01:常用json&&map互转