Попробуйте это
public JSONArray sortWeekDays(JSONArray daysArray) {
JSONArray sortedWeekDays = new JSONArray();
HashMap<String, Integer> dayMap = new HashMap<>();
dayMap.put("Monday", 1);
dayMap.put("Tuesday", 2);
dayMap.put("Wednesday", 3);
dayMap.put("Thursday", 4);
dayMap.put("Friday", 5);
dayMap.put("Saturday", 6);
dayMap.put("Sunday", 7);
ArrayList<Days> weekdays = new ArrayList<>();
for (int i = 0; i < daysArray.length(); i++) {
JSONObject dayObject = daysArray.getJSONObject(i);
Days day = new Days(dayObject.getString("id"), dayObject.getString("weekday"));
weekdays.add(day);
}
Collections.sort(weekdays, new Comparator<Days>() {
@Override
public int compare(Days o1, Days o2) {
return dayMap.get(o1.getDay()).compareTo(dayMap.get(o2.getDay()));
}
});
for (Days days : weekdays) {
sortedWeekDays.put(days.getJsonObject());
}
return sortedWeekDays;
}
public class Days {
String id = "";
String day = "";
public Days(String id, String day) {
this.id = id;
this.day = day;
}
public String getDay() {
return day;
}
public JSONObject getJsonObject() {
super.toString();
JSONObject object = new JSONObject();
object.put("id", id);
object.put("weekday", day);
return object;
}
}