[{"doc_count":170885,"key":"1"},{"doc_count":163649,"key":"2"},{"doc_count":57611,"key":"98"},{"doc_count":18951,"key":"0"},{"doc_count":2040,"key":"91"},{"doc_count":1690,"key":"96"},{"doc_count":39,"key":"99"},{"doc_count":27,"key":"3"}]这样的JSONArray,获取doc_count等于27有什么好办法
时间: 2023-07-02 17:18:25 浏览: 145
Mongo_CheatSheet:Mongo Shell备忘单和快速入门指南
可以使用 Java 中的 JSON 库(如 FastJSON、Gson 等)来解析 JSONArray,然后遍历 JSONArray 中的元素,找到 doc_count 等于 27 的元素。
下面是用 FastJSON 实现的示例代码:
```java
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
public class JsonArrayDemo {
public static void main(String[] args) {
String jsonStr = "[{\"doc_count\":170885,\"key\":\"1\"},{\"doc_count\":163649,\"key\":\"2\"},{\"doc_count\":57611,\"key\":\"98\"},{\"doc_count\":18951,\"key\":\"0\"},{\"doc_count\":2040,\"key\":\"91\"},{\"doc_count\":1690,\"key\":\"96\"},{\"doc_count\":39,\"key\":\"99\"},{\"doc_count\":27,\"key\":\"3\"}]";
JSONArray jsonArray = JSONArray.parseArray(jsonStr);
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
int docCount = jsonObject.getIntValue("doc_count");
if (docCount == 27) {
System.out.println(jsonObject);
}
}
}
}
```
在上面的代码中,我们首先将 JSON 字符串转换为 JSONArray 对象,然后遍历 JSONArray 中的每个元素。对于每个元素,我们将其转换为 JSONObject 对象,并通过 getIntValue() 方法获取 doc_count 的值。如果该值等于 27,我们就打印出这个 JSONObject 对象。
输出结果为:
```
{"doc_count":27,"key":"3"}
```
可以看到,我们成功地找到了 doc_count 等于 27 的元素。
阅读全文