对JSON对象进行排序


    /**
     * 尺寸 根据 矩阵列号升序
     * @param jsonArr
     * @return
     */
    public static JSONArray sizeAsc(JSONArray jsonArr) {

        JSONArray sortedJsonArray = new JSONArray();
        List jsonValues = new ArrayList();
        for (int i = 0; i < jsonArr.size(); i++) {
            jsonValues.add(jsonArr.getJSONObject(i));
        }
        Collections.sort(jsonValues, new Comparator() {
            // You can change "Name" with "ID" if you want to sort by ID
            private static final String KEY_NAME = "martixcol";

            @Override
            public int compare(JSONObject a, JSONObject b) {
                BigDecimal aStr = BigDecimal.ZERO;
                BigDecimal bStr = BigDecimal.ZERO;
                try {
                    // 这里是a、b需要处理的业务,需要根据你的规则进行修改。
                    aStr = a.getBigDecimal(KEY_NAME);
                    bStr = b.getBigDecimal(KEY_NAME);
                } catch (JSONException e) {
                    // do something
                }
                //升序
                return aStr.compareTo(bStr);
                   //降序
                  //return -aStr.compareTo(bStr);
                // if you want to change the sort order, simply use the following:

            }
        });
        for (int i = 0; i < jsonArr.size(); i++) {
            sortedJsonArray.add(jsonValues.get(i));
        }
        return sortedJsonArray;
    }

 

你可能感兴趣的:(Json)