当前位置:网站首页>JSONObject遍历的时候顺序不一致,导致数据对应出错
JSONObject遍历的时候顺序不一致,导致数据对应出错
2022-08-09 07:01:00 【吃素的哈士奇】
JSONObject的数据顺序不对
为什么拿出来不对!
JSON的顺序是按照输出是按key的 Hashmap 来排序的,
而Hashmap 是无序的,所以取值的时候,就是随意顺序取
所需jar包
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.76</version>
</dependency>
怎么解决
给JSONObject转化的时候加上Feature.OrderedField。
JSONObject jsonObj = JSONObject.parseObject(ret,Feature.OrderedField);
具体代码
JSONObject jsonObj = JSONObject.parseObject(ret,Feature.OrderedField);
JSONObject jsonObj1 = jsonObj;
JSONArray jsonArray = null;
for (int i = 0; i < split.length; i++) {
if(i< (split.length-1)){
jsonObj1 = JSONObject.parseObject(jsonObj1.get(split[i]).toString());
}else {
try {
jsonArray = (JSONArray) jsonObj1.get(split[i].toString());
}catch (Exception e){
jsonArray = JSONArray.parseArray(jsonObj1.get(split[i]).toString());
}
}
}
项目部署中遇到得问题
记住版本尽量用我给得这个1.2.76 ,千万别用1.2.78.有可能会报错!!!
边栏推荐
- APP product source data interface (taobao, jingdong/spelling/suning/trill platform details a lot data analysis interface) code and docking tutorial
- Explain the wait() function and waitpid() function in C language in detail
- jvm线程状态
- 线程池总结
- list与string转换
- SSL证书最长有效期13个月,还有必要一次申请多年吗?
- The Integer thread safe
- rsync:recv_generator: mkdir (in backup) failed:Permission denied (13) |failed to set times on '.'
- 先序遍历,中序遍历,后序遍历,层序遍历
- 无重复的字符的最长子串
猜你喜欢
随机推荐
P7阿里面试题2020.07 之滑动窗算法(阿里云面试)
用tensorflow.keras模块化搭建神经网络模型
物理层课后作业
Thread Pool Summary
jvm线程状态
sklearn数据预处理
C language implements sequential stack and chain queue
【sqlite3】sqlite3.OperationalError: table addresses has 7 columns but 6 values were supplied
vlucas/phpdotenv phpdotenv获取变量内容偶尔出现返回false
Mysql实操
AD画PCB板教程 20分钟讲清楚操作流程 铺铜 网络标号
list与string转换
搭载开源鸿蒙系统的嵌入式XM-RK3568工业互联方案
vim 程序编辑器的基本操作(积累)
MongDb的查询方式
什么是分布式事务
6 states of a thread
bzoj 5333 [Sdoi2018]荣誉称号
字节也开始缩招了...
Variable used in lambda expression should be final or effectively final报错解决方案