// 前提/map.get("listKey")为List集合
List<JavaBean> list = (List<JavaBean>) map.get("listKey"); if (CollectionUtils.isNotEmpty(list)) { list.forEach(xx -> { }); }
以上代码运行至forEach时会报错:java.util.LinkedHashMap cannot be cast to JavaBean
细想之后结论:map获取listKey之后形成的数据集合格式与JavaBean数据格式不符
修改代码:
List<JavaBean> list = JSONObject.parseArray(JSONObject.toJSONString(map.get("listKey"))).toJavaList(JavaBean.class); if (CollectionUtils.isNotEmpty(list)) { list.forEach(xx -> { }); }
使用JSONObject转换数据格式的方式使之运行通过