JAVA 通过LIst对JsonArrary进行排序
1.Collections.sort
参考代码
//示例数据, string转JSONArray
String jsonArrStr = "[ { \"ID\": \"135\", \"Name\": \"Fargo Chan\", \"Value\": \"147.52\" },{ \"ID\": \"432\", \"Name\": \"Aaron Luke\" , \"Value\": \"311.44\" },{ \"ID\": \"252\", \"Name\": \"Dilip Singh\", \"Value\": \"22.12\" }]";
JSONArray jsonArr = new JSONArray(jsonArrStr);
JSONArray sortedJsonArray = new JSONArray(); //定义排序后的JSONArray
//这里是对JSONArray 进行比较排序,其中就是JSONObject. 同样也可以是其他基本类型或者类;
List<JSONObject> jsonValues = new ArrayList<JSONObject>();
for (int i = 0; i < jsonArr.length(); i++) {
jsonValues.add(jsonArr.getJSONObject(i));
}
Collections.sort( jsonValues, new Comparator<JSONObject>() {
//指定key
private static final String KEY_NAME = "Name";
@Override
public int compare(JSONObject a, JSONObject b) {