如何解决JsonObject无序的问题
来源:互联网 发布:js math ceil 编辑:程序博客网 时间:2024/05/21 05:06
最近做一个项目解析json数据的时候遇到了json无序的问题,网上搜了半天没找到办法,只能自己想办法了。
先看json数据:
{ "1": "尺码", "2": "款式", "3": "颜色" }
我就想按照顺序输出:
1:尺码 2:款式 3:颜色
但是经常输出是无序的。 (解析的时候是无序的)
但是经常输出是无序的。
定义一个modle 用来存储每一个item.
public class SpecEntity implements Comparable<SpecEntity>{ private int id; private String spec; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getSpec() { return spec; } public void setSpec(String spec) { this.spec = spec; } @Override public int compareTo(SpecEntity o) { if(this.id < o.getId()){ return -1; }else if(this.id == o.getId()){ return 0; }else if(this.id > o.getId()){ return 1; } return 0; }}
将json数据解析成链表,代码如下:
private ArrayList<SpecEntity> getJsonList(String jsonStr){ ArrayList<SpecEntity>specList = new ArrayList<SpecEntity>(); try { JSONObject spec_nameJSONObject = new JSONObject(jsonStr); Iterator<String> spec_nameIterator = spec_nameJSONObject.keys(); while (spec_nameIterator.hasNext()) { String key = spec_nameIterator.next(); SpecEntity apecEntity = new SpecEntity(); apecEntity.setSpecKey(key); apecEntity.setSpecValue(spec_nameJSONObject.getString(key)); specList.add(apecEntity); } //看到没这个才是重点!!!!!! Collections.sort(agentGoodsDetailSpaceBean.getSpec_name()); } catch (Exception e) { DebugLogUtil.getInstance().Error(e.toString()); } return specList;}
大家看明白没?下面这句话才是重点,先将json解析成链表,然后给链表排序:
Collections.sort(specList);
原文链接:http://blog.csdn.net/mffandxx/article/details/51606632
0 0
- 如何解决JsonObject无序的问题
- 如何解决JsonObject无序的问题
- 如何解决fastJson无序问题?
- 解决JSONObject类找不到的问题
- 解决fastjson无序的问题--从源码的角度来看
- 解决JSONObject首字母默认变成小写问题
- 用分类汇总的功能解决无序数据的统计问题
- 解决asp.net FileUpload控件无法获取完整路径的问题 - 无序修改浏览器参数
- 设计模式之单例模式二(解决无序写入的问题)
- 关于“JSONObject cannot be resolved to a type”问题的解决
- 解决FastJson com.alibaba.fastjson.JSONObject cannot be cast to的问题
- UVA 156 如何无序的匹配单词
- JDK8的ParallelStream遍历无序的问题
- XML XSD 元素无序的问题
- UDP丢包及无序的问题
- 无序链表的去重问题
- Jquery前端之 事件绑定(二) 解决事件的删除,事件的无序执行的问题,有个小例子
- JSONObject.fromObject解决Key只能为String类型问题[转载]
- JAVA之TCP网络通讯
- Centos中改变MySQL的默认编码
- 多表连接的三种方式详解 HASH JOIN MERGE JOIN NESTED LOOP【3】
- [LeetCode]Two Sum II - Input array is sorted
- OpenGL 纹理坐标 和 顶点坐标映射关系 详解
- 如何解决JsonObject无序的问题
- [LeetCode]216. Combination Sum III
- Hadoop实战之三~ Hello World
- 分治法合并排序(C++)
- 双11媒体大屏背后的数据技术与产品
- 完整详解 swift GCD系列(一)dispatch_async;dispatch_sync;dispatch_async_f;dispatch_sync_f
- 【Unity&DragonBones】DB中的Demon分析(一)CoreElement场景代码分析
- 英语学习
- 成员内部类的使用