问题

JSONArray中嵌套JSONObject, 对JSONArray进行排序

排序前:

[{"id":1,"name":"ljw"},{"id":3,"name":"ljw"},{"id":2,"name":"ljw"}]

排序后:

[{"id":1,"name":"ljw"},{"id":2,"name":"ljw"},{"id":3,"name":"ljw"}]

利用Collections.sort()

JSONObject o1 = JSONObject.parseObject("{\"id\":1,\"name\":\"ljw\"}");
JSONObject o2 = JSONObject.parseObject("{\"id\":3,\"name\":\"ljw\"}");
JSONObject o3 = JSONObject.parseObject("{\"id\":2,\"name\":\"ljw\"}");
JSONArray a = new JSONArray();
a.add(o1);
a.add(o2);
a.add(o3);
//转list 1
List<JSONObject> list = JSONArray.parseArray(a.toJSONString(), JSONObject.class);
//转list 2
//List<JSONObject> list = new ArrayList<JSONObject>();
//for (int i = 0; i < a.size(); i++) {
// list.add((JSONObject) a.get(i));
//}
System.out.println("排序前:"+a);
Collections.sort(list, new Comparator<JSONObject>() {
@Override
public int compare(JSONObject o1, JSONObject o2) {
int a = o1.getInteger("id");
int b = o2.getInteger("id");
if (a > b) {
return 1;
} else if(a == b) {
return 0;
} else
return -1;
}
});
JSONArray jsonArray = JSONArray.parseArray(list.toString());
System.out.println("排序后:" + jsonArray);

原文地址

JSONArray排序[收藏]的更多相关文章

  1. JSONArray排序和倒转

    JSONArray排序 // JSONArray转list List<JSONObject> list = JSONArray.parseArray(ordersDataArray.toJ ...

  2. 我想要个pc和手机共有的客户端,就像百度云(iBarn网盘好用)

    https://github.com/zhimengzhe/iBarn iBarn网盘是一个基于PHP开发的先进的云存储系统,提供文件的网络备份,同步和分享服务:支持断点续传,秒传等功能:可选择文件下 ...

  3. TW实习日记:第22天

    今天开发项目的还没完成的功能点,没什么难的,样式复制粘贴,JSON表单配一配,接口调一调,基本就完成了.不过中间在写后台的一些接口时,发现被自己之前写的一些方法给坑了.为什么这样说呢,因为在之前的几个 ...

  4. java解析从接口获取的json内容并写到excle(只写与标题匹配的值,并非把所有的接口返回值都写进去)

    需求:从接口中获取的一个json数组中有多个对象,每个对象中的值并非都需要,只需查出标题中的几项对应的值即可.且还需要按某个字段排序后依次写到excel 实现方法如下: package jansonD ...

  5. 基于Metronic的Bootstrap开发框架经验总结(13)--页面链接收藏夹功能的实现2(利用Sortable进行拖动排序)

    在上篇随笔<基于Metronic的Bootstrap开发框架经验总结(12)--页面链接收藏夹功能的实现>上,我介绍了链接收藏夹功能的实现,以及对收藏记录的排序处理.该篇随笔主要使用功能按 ...

  6. 转发自:一像素 十大经典排序算法(动图演示)原链接:https://www.cnblogs.com/onepixel/articles/7674659.html 个人收藏所用 侵删

    原链接:https://www.cnblogs.com/onepixel/articles/7674659.html     个人收藏所用   侵删 0.算法概述 0.1 算法分类 十种常见排序算法可 ...

  7. jsonarray根据id排序

    List<JSONObject> jsonValue=new ArrayList<JSONObject>(); JSONArray sortJsonarr=new JSONAr ...

  8. Java中对jsonArray的排序,使用的是Gson

    使用Gson对json解析字符串,转化为json对象. 先上代码: 下面是main方法里面的代码 package testJava; import java.util.ArrayList; impor ...

  9. 基于python对B站收藏夹按照视频发布时间进行排序

    基于python对B站收藏夹按照视频发布时间进行排序 前言 在最一开始,我的B站收藏一直是存放在默认收藏夹中,但是随着视频收藏的越来越多,没有分类的视频放在一起,想在众多视频中找到想要的视频非常困难, ...

随机推荐

  1. 【转】Bri's改装笔记

    网上关于三菱蓝瑟的改装方案的文章不少,但在以不换发动机为前提的理性改装确是这两篇和东南汽车俱乐部科仔的那篇<4G18的低成本NA玩法>最具参考价值. 小排量NA车的乐趣不在于跟人比直线加速 ...

  2. Python廖雪峰学习笔记——单元测试

    定义:对一个模块.一个类.一个函数进行进行正确性检验的测试性工作.当我们对函数或者模块等进行修改时,单元测试就显得尤为重要. 单元测试 = 测试用例(用来测试的数据)+测试模块

  3. Android的基础知识点

    一.Intent的2种启动方式 1.显示启动: setClass(“包名”,“启动的Activity.class”); XML文件中启动Activity 2.隐示启动: setAction(" ...

  4. bhp 阅读笔记 OSX 下 setuptools pip 安装

    安装 python-setuptools python-pip 尝试 brew install python-setuptools 失败 brew update 失败 $ cd `brew --pre ...

  5. 不再需要ImageOle或DynamicGifCtl,.NET实现IM编辑控件

    多年前写过一篇文章<C# 实现IM聊天信息输入显示控件(1)-显示GIF动画图片>,主要是使用ActiveX控件实现RichTextBox插入gif动画图片,包括使用QQ的ImageOle ...

  6. 【9】JMicro微服务-发布订阅消息服务

    如非授权,禁止用于商业用途,转载请注明出处作者:mynewworldyyl 1. JMicro消息服务目前实现特性 a. JMicro只支持发布订阅消息服务,不支持队列式消息服务: b. 不支持消息持 ...

  7. leetcode-165-比较版本号

    题目描述: 比较两个版本号 version1 和 version2.如果 version1 > version2 返回 1,如果 version1 < version2 返回 -1, 除此 ...

  8. Swift Podfile中的 use_frameworks!

    use_frameworks! A.用cocoapods 导入swift 框架 到 swift项目和OC项目都必须要 use_frameworks!B.使用 dynamic frameworks,必须 ...

  9. (转)MySQL优化笔记(八)--锁机制超详细解析(锁分类、事务并发、引擎并发控制)

    当一个系统访问量上来的时候,不只是数据库性能瓶颈问题了,数据库数据安全也会浮现,这时候合理使用数据库锁机制就显得异常重要了. 原文:http://www.jianshu.com/p/163c96983 ...

  10. java数据结构之递归算法

    概述程序调用自身的编程技巧称为递归( recursion).递归做为一种算法在程序设计语言中广泛应用.递归有直接递归和间接递归•直接递归:函数在执行过程中调用本身.•间接递归:函数在执行过程中调用其它 ...