JSONObject解决顺序不正确
温馨提示:
本文最后更新于 2022年09月01日,已超过 602 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我。
博主常用的JSON工具为 com.alibaba.fastjson
JSONObject只是一种数据结构,可以理解为JSON格式的数据结构,JSONObject可以很方便的转换成字符串,也可以很方便的把其他对象转换成JSONObject对象。但是大家在使用JSONObject的时候,它的顺序不对,不知道要怎么解决?下面我们就给大家讲解一下。
由于 com.alibaba.fastjson.JSONObject 默认是由hashMap组成的,所以内容存放的顺序并不是有序的
如果要实现有序的话需要使用LinkedHashMap的方式,在新建Json对象的时候要这样写
JSONObject jsonObject= new JSONObject(new LinkedHashMap<>());
有时候Json的顺序并不是我们想要的时候,需要进行下倒叙,这里的思路是可以把json转换为ArrayList然后再顺序反转
ArrayList sleepData = new ArrayList();
sleepData.addAll(sleepList);
Collections.reverse(sleepData);
在这里需要注意的是ArrayList的底层是数组,在Collections.reverse()方法进行反转顺序的时候操作的数组,会导致所有引用改集合的变量顺序都反转了;所以在必要的时候自己new一个对象进行操作。
JsonObject 基础认识与运用
JsonObject 就是常说的json。是一种重要的数据传输对象。其格式为{"key1":value1,"key2",value2....};key 必须是字符串。
因为ajax请求不刷新页面,但配合js可以实现局部刷新,因此json常常被用来作为异步请求的返回对象使用。
通过response.getWriter()获取PrintWriter pw,然后pw.print(json)。如果没有设置response.setContentType("application/json; charset=utf-8"); 则需要自己再js中进行解析。
//插入元素
JSONObject jsonObject = JSONObject.parseObject(param);
kpiCfgObject.put(key, value);
//遍历
for (Map.Entryentry: jsonObject.entrySet())
{
entry.getKey() + "&" + entry.getValue()
.toString();
}
正文到此结束
- 本文标签: Java 后端 JSON
- 本文链接: http://www.92cxy.cn/article/34
- 版权声明: 本文由王小东原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权
热门推荐
相关文章
该篇文章的评论功能已被站长关闭