List<JSONObject> jsonValue=new ArrayList<JSONObject>();
JSONArray sortJsonarr=new JSONArray();
for (int i = 0; i < jsonArray.length(); i++) {
try {
jsonValue.add(jsonArray.getJSONObject(i));
} catch (JSONException e) {
e.printStackTrace();
}
}
Collections.sort(jsonValue,new Comparator<JSONObject>() {
private static final String key="id";
public int compare(JSONObject a, JSONObject b) {
Integer valA = 0;
Integer valB = 0;
try {
valA = a.getInt(key);
valB = b.getInt(key);
} catch (JSONException e) {
e.printStackTrace();
}
return valA.compareTo(valB);
}
});
public JSONArray getAllServerType(int uid){
String url = "";
JSONArray jsonArray = this.giantBaseDaoInterface.getJsonObjectByUrl(url);
JSONObject json =new JSONObject();
try {
json.put("id", "-1");
json.put("text", "全部");
} catch (Exception e) {
e.printStackTrace();
}
jsonArray.put(json);
//排序
List<JSONObject> jsonValue=new ArrayList<JSONObject>();
JSONArray sortJsonarr=new JSONArray();
for (int i = 0; i < jsonArray.length(); i++) {
try {
jsonValue.add(jsonArray.getJSONObject(i));
} catch (JSONException e) {
e.printStackTrace();
}
}
Collections.sort(jsonValue,new Comparator<JSONObject>() {
private static final String key="id";
public int compare(JSONObject a, JSONObject b) {
Integer valA = 0;
Integer valB = 0;
try {
valA = a.getInt(key);
valB = b.getInt(key);
} catch (JSONException e) {
e.printStackTrace();
}
return valA.compareTo(valB);
}
});
for(int i=0;i<jsonArray.length();i++){
sortJsonarr.put(jsonValue.get(i));
}
return sortJsonarr;
}

jsonarray根据id排序的更多相关文章

  1. dedecms 按照栏目指定的id排序

    方法: 1.打开include/taglib/channelartlist.lib.php,找到大约78行,把 代码如下(一定要注意表名一致): $dsql->SetQuery("SE ...

  2. 数据库根据id排序

    select * from 表名 order by id 根据 id 从小到大排序

  3. xunsearch如何按照ID排序

    你ini再建一个字段id_tmp 类型type=numeric 重建索引的时候 数据源 加一个主键id的别名 id, id as id_tmp 排序的时候按照id_tmp排序

  4. 解决织梦DEDEcms指定arclist的特定ID排序的方法

    转载网址:http://blog.hrseo.net/xuexi/184.html 替换/include/taglib/arclist.lib.php这个文件,下载链接: http://pan.bai ...

  5. navicat for mysql 如何将表ID排序重1开始?

    如果是自增字段,删除数据,他是根据原来的继续往后排的 1.你可以删除这个字段,重新建立个自增字段就可以了 2.好像也可以重新设置排序起始 alter table table_name AUTO_INC ...

  6. mysql按ID排序(转)

    自己建表的时候,把一个字段类型创建为varchar(2) ,其实应该建为int(2)的. 因为我只允许输出数字.这本来也没什么,无非就是占点空间,懒得改了.但是今天在后台发现排序有问题.于是,没办法, ...

  7. MySQL ID排序乱了的解决办法

    可能在整理表中数据的时候删除了某一行数据,导致ID空缺,下面是我用到的解决办法:(请先备份,MySQL备份方法见 MySQL->MySQL备份) 使用ALTER DROP删除原有的ID字段: A ...

  8. dede如何按自己写的ID进行排序

    点评:dede排序问题:如何按自己写的ID排序,更改一下函数.即可轻松实现,下面有个具体的示例,大家可以参考下. 更改一下函数,实现排序方式根据自己写的ID排序就好了. 方法: 1.打开include ...

  9. 上一篇下一篇 排序 (非ID字段排序)

    网上看了很多关于"上一篇下篇"的文章,可大都是按ID排序. 实际上,很少有按ID排序的. 分享下我的单独排序字段的写法,主要分为ms sql2000 和 ms 2005及以上版本. ...

随机推荐

  1. 登录ssh提示:ssh_exchange_identification: read: Connection reset by peer error

    vim /etc/hosts.allow 添加 sshd : ALL

  2. Ansible 快速部署 Zabbix 4

    阅读本文章需要具有Ansible.Zabbix基础.本次教程基于如下环境: CentOS 7.x Zabbix 4.0 Ansible 2.5 服务器初始化 关闭防火墙.selinux,添加epel常 ...

  3. Java中的内存泄露的几种可能

    Java内存泄漏引起的原因: 内存泄漏是指无用对象(不再使用的对象)持续占有内存或无用对象的内存得不到及时释放,从而造成内存空间的浪费称为内存泄漏. 长生命周期的对象持有短生命周期对象的引用就很可能发 ...

  4. 2.STM32启动文件

    一.概念声明 中断向量:由硬件产生的中断标识码,一般用于存放中断服务程序的跳转指令.根据硬件产生的中断号查找中断向量表来确定对应的中断向量.CM3内核有15个异常  和240个中断源.    程序的内 ...

  5. [UE4]Size Box

    一.Size Box用来指定一个特定的尺寸 二.Size Box只能放一个子控件 三.Size Box一般作为Canvas Panel的子控件,并勾选Size To Content选项,而不作为根节点 ...

  6. 04-模拟String去除空格trim()方法

    /** * 模拟String去除左右两边空格 * @param str */ public static String trim(String str) { char[] list = str.toC ...

  7. oracle之分析函数解析及其应用场景

    ORACLE 分析函数FIRST_VALUE,LAST_VALUE用法sum overavg over first_value overlast_value over...聚合函数结合over就是分析 ...

  8. JAVA方法参数传递

    package demo.methodparamDemo; public class MethodParamsDemo { public static void main(String[] args) ...

  9. 文件上传:swfupload.js、blueimp-file-upload

    一.swfupload 1.下载swfupload http://code.google.com/p/swfupload/ 2. 3.API  http://www.cnblogs.com/henw/ ...

  10. C#设计模式(4)——抽象工厂模式(Abstract Factory)

    简单工厂模式: 简单工厂模式的工厂类随着产品类的增加需要增加额外的代码 工厂方法模式: 工厂方法模式每个具体工厂类只完成单个实例的创建,所以它具有很好的可扩展性 但是在实际应用中,一个工厂不止会创建单 ...