。。
public static JSONArray subArray(JSONArray array) {
try {
JSONArray subArray = new JSONArray();
JSONObject obj = null;
JSONObject obj2 = null;
JSONArray aArray = new JSONArray();
for (int i = 0, size = array.length(); i < size; i++) {
obj = array.getJSONObject(i);
if (i + 1 < size) {
if (i - 1 < 0) {
subArray = new JSONArray();
subArray.put(obj);
} else {
obj2 = array.getJSONObject(i - 1);
if (obj.getString("first_category_id").equals(obj2.getString("first_category_id"))) {
subArray.put(obj);
} else {
aArray.put(subArray);
subArray = new JSONArray();
subArray.put(obj);
}
}
} else {
if (size + 1 > 0) {
obj2 = array.getJSONObject(i - 1);
if (obj.getString("first_category_id").equals(obj2.getString("first_category_id"))) {
subArray.put(obj);
if (size - 1 == i) {
aArray.put(subArray);
}
} else {
aArray.put(subArray);
subArray = new JSONArray();
subArray.put(obj);
if (i + 1 == size) {
aArray.put(subArray);
}
}
} else {
subArray.put(obj);
aArray.put(subArray);
}
}
}
return aArray;
}catch (Exception e){
e.printStackTrace();
return null;
}
}