1.背景:需要过滤jsonArray中不需要的人员数据
2.根据map移除不需要的数据
public class DemoTest { public static void main(String[] args) { String jsonStr = "[{\"name\":\"Alice\", \"age\":20}, {\"name\":\"Bob\", \"age\":25}]"; Map<String,String> map= new HashMap<>(); map.put("Alice","20"); JSONArray jsonArr = new JSONArray(Collections.singletonList(jsonStr)); Iterator<Object> iterator = jsonArr.iterator(); while (iterator.hasNext()) { Object obj = iterator.next(); if (obj instanceof JSONObject) { JSONObject jsonObj = (JSONObject) obj; String name = jsonObj.getString("name"); if(map.get(name)==null){ iterator.remove(); } } } System.out.println(jsonArr); } }