JSONArray JSONObject都来自com.alibaba.fastjson

为了处理JSON格式的字符串,形如

[{"id":"c7b09b8e-7f62-11e8-940f-7cd30adaaf52","name":"01栋","code":"001","parentId":0,"checked":0,"level":1},
{"id":"cc0e8850-7f62-11e8-940f-7cd30adaaf52","name":"01单元","code":"01","parentId":"c7b09b8e-7f62-11e8-940f-7cd30adaaf52","checked":0,"level":2},
{"id":"d3f350da-7f62-11e8-940f-7cd30adaaf52","name":"001-01-0101","code":"0101","parentId":"cc0e8850-7f62-11e8-940f-7cd30adaaf52","checked":1,"level":3}]

采用JSONArray.parseArray(str),将字符串转化为JSON对象的列表

JSONArray jsonArray = JSONArray.parseArray((String) grid.get("gridRange"));

遍历JSONArray

for (int i = 0; i < jsonArray.size(); i++) {
    ...
}

取到JSONArray中的JSONObject对象,i为遍历中的下标

JSONObject job = jsonArray.getJSONObject(i);

取JSONObject对象中某个属性对应的值

int level = (int)job.get("level");

改变JSONObject中某个属性的值

job.put("name",floor + "层");

对JSONArray的操作可看作List,JSONObject则为Map

观察源码发现:JSONArray 实现了 List<Object>,JSONObject 实现了 Map<String, Object>,因此foreach、stream等对它们也同样适用;另外,它们都继承自JSON对象,这个对象提供了String->Object的若干方法。

GitHub 加速计划 / js / json
41.72 K
6.61 K
下载
适用于现代 C++ 的 JSON。
最近提交(Master分支:1 个月前 )
960b763e 4 个月前
8c391e04 7 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐