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()); }