List转JSONArray和JSONArray转List

 

1.List转JSONArray

// 定义泛型列表,T代表任意类型的对象
List<T> list = new ArrayList<T>();

// 检查list是否为空,避免在空列表上执行转换
JSONArray array;
if (list != null && !list.isEmpty()) {
    // 使用fastjson库将List转换为JSONArray
    array = JSONArray.parseArray(JSON.toJSONString(list));
} else {
    // 如果列表为空,则初始化一个空的JSONArray
    array = new JSONArray();
}

 

2.JSONArray转List

// 初始化一个空的JSONArray
JSONArray array = new JSONArray();

// 假设EventColAttr是一个已定义的类
List<EventColAttr> list;
try {
    // 将JSONArray转换为特定类型的List
    list = JSONObject.parseArray(array.toJSONString(), EventColAttr.class);
} catch (Exception e) {
    // 异常处理:如果转换失败,输出错误信息并初始化为空列表
    list = new ArrayList<>();
    System.out.println("转换出错:" + e.getMessage());
}

 

 

3.String转JSONArray

// 使用标准的JSON格式(双引号)
String st = "[{\"name\":\"Tim\",\"age\":25,\"sex\":\"male\"},{\"name\":\"Tom\",\"age\":28,\"sex\":\"male\"},{\"name\":\"Lily\",\"age\":15,\"sex\":\"female\"}]";

JSONArray tableData;
try {
    // 将字符串转换为JSONArray
    tableData = JSONArray.parseArray(st);
} catch (Exception e) {
    // 异常处理:如果转换失败,输出错误信息并初始化为空的JSONArray
    tableData = new JSONArray();
    System.out.println("转换出错:" + e.getMessage());
}

 

posted @ 2023-11-22 14:00  Tab_to  阅读(3021)  评论(0)    收藏  举报