如何根据JSONArray的值过滤列表?
JSONArray的元素是简单的json结构,带有键和值。
JSONArray来自包org.json并使用此依赖项
org.json
json
20180130
我点击端点时得到的字符串响应以这种方式解析
String response = [{"ID": 1,"updatedAt": "2019-04-12T09:09:48"},{"ID": 2,"updatedAt": "2019-04-12T09:09:48"}
JSONArray jsonArray = new JSONArray(response)
我要过滤的列表包含json字符串List eventDataSetList列表
现在我如何使用来自ID的密钥jsonArray的值以比这更好的方式过滤列表?
这是我到目前为止所做的,但我真的不想使用嵌套循环:
Map filteredEvents = new HashMap<>();
for (String event : eventDataSetList) {
for (Object obj : jsonArray) {
JSONObject jsonObject = (JSONObject) obj;
if (event.contains(jsonObject.getString("ID"))) {
filteredEvents.put(jsonObject, event);
}
}
}