加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – JSONObject有序映射参数

发布时间:2020-12-15 01:03:10 所属栏目:Java 来源:网络整理
导读:我有一个Map,它包含String键和String和整数值. 我将值放入地图中,如下所示: Map map = new LinkedHashMap();map.put("b",1);map.put("a",2); 在此之后,我将地图添加到List中: List out = new LinkedList();out.add(map); 之后,我创建了一个JSONObject并将L

我有一个Map,它包含String键和String和整数值.
我将值放入地图中,如下所示:

Map map = new LinkedHashMap();
map.put("b",1);
map.put("a",2);

在此之后,我将地图添加到List中:

List out = new LinkedList();
out.add(map);

之后,我创建了一个JSONObject并将List放入其中:

org.json.JSONObject json = new org.json.JSONObject();
json.put("header","header");
json.put("array",out);

但如果我这样做,我会看到这个json结构:

{“header”:”header”,“array”:[{“a”:2,”b”:1}]}

但我想看到:

{“header”:”header”,”array”:[{“b”:1,”a”:2}]}

我哪里做错了?也许这不是正确的方法?

最佳答案
如果您想保留订单,则不应使用org.json库,因为它将数据存储在HashMap中,因此您要保留的任何订单都将被忽略.用org.json解决这个问题并不容易.我建议你使用另一个JSON库(GSON,Jackson,minimal-json等).几乎任何其他库都保留了像LinkedHashMap这样的插入顺序.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读