标签:有一个 map artifact 技术 sonar seo 1.7 个数 user
假如现在根据一个接口得到了一串Json字符串,我们要获取Json字符串中某一个数字,Json字符串如下
{
"result": {
"offset": 0,
"timeSpan": [
"2018/10/16",
"2018/10/15"
],
"fields": [
"app_name",
"time",
"user_count"
],
"total": 11,
"end": 0,
"sum": [
[
{
"val": 238285,
"flag": -1
}
],
[
796749
]
],
"pageSum": []
}
}
现在要获取 sum中val 对应的238285 这个值
使用fastJson 阿里的
添加maven依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.9</version>
</dependency>
String result = .....(就上面那个字符串)
JSONObject hashMap = JSONObject.parseObject(result);
得到是一个result为JSONObject的对象,如图1.1
? 图1.1
这个JSONOBject内部有一个Map的成员变量
JSONObject jsonObjectResult = hashMap.getJSONObject("result");
得到的JSONObjectResult如下图1.2:
? 图1.2
查看HashMap为sum的数据类型如图1.3
? 图1.3
JSONArray jsonArraySum = jsonObjectResult.getJSONArray("sum");
得到的jsonArraySum如下图1.4
? 图1.4
JSONArray jsonArraySum0 = jsonArraySum.getJSONArray(0);
得到jsonArraySum0如图1.5
? 图1.5
JSONObject jsonObject0 = jsonArraySum0.getJSONObject(0);
得到jsonObject0如下图1.6
? 图1.6
String value = jsonObject0.get("val").toString()
得到value如下图1.7
? 图1.7
String json = ...(上面的Json字符串)
String value = JSONObject.parseObject(result)
.getJSONObject("result")
.getJSONArray("sum")
.getJSONArray(0)
.getJSONObject(0)
.get("val").toString();
标签:有一个 map artifact 技术 sonar seo 1.7 个数 user
原文地址:https://www.cnblogs.com/Krloypower/p/9796889.html