您的位置:首页 > Web前端 > JavaScript

JSON数组排序

2015-08-14 10:43 681 查看
Json数组中有json对象,json对象有多个key-value对。根据json对象中的某个key对json数组进行排序。如果value是数字,就按照数字排序。否则,按照自然排序。

方法如下:

/**

*

* @param ja json数组

* @param field 要排序的key

* @param isAsc 是否升序

*/

private static void sort(JSONArray ja,final String field, boolean isAsc){

Collections.sort(ja, new Comparator<JSONObject>() {

@Override

public int compare(JSONObject o1, JSONObject o2) {

Object f1 = o1.get(field);

Object f2 = o2.get(field);

if(f1 instanceof Number && f2 instanceof Number){

return ((Number)f1).intValue() - ((Number)f2).intValue();

}else{

return f1.toString().compareTo(f2.toString());

}

}

});

if(!isAsc){

Collections.reverse(ja);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: