Band BY Day on Android?

Can we analyze JSON Data As Group BY Day data in Android. I cannot generate logic how to parse JSON data like per day.

JSON data

[
 {
    "ID": 2012,
    "ClassRoom_ID": 1,
    "DayOfTheWeek": "6",
    "StartTime": "2017-03-20T12:37:00",
    "EndTime": "2017-03-20T10:37:00",
    "EmpID": 8,
    "classNO": 8,
    "CourseID": 1012,
    "teachers": {
      "EmpID": 8,
      "NAME": "Hunter Fuentes",
      "PHONE_NO": "04 37 33 81 11",
      "MOBILE_NO": "16890727-0931",
      "EMAIL": "id.ante.dictum@egetnisi.ca",
      "DESIGNATION": "Abdul Norris",
      "PERMANENT_ADDRESS": "492-3934 Nunc Road",
      "TEMP_ADDRESS": "P.O. Box 108, 1841 Sodales Rd.",
      "DOB": "1867-09-19T00:00:00",
      "TEACHER_OR_NONTEACHER": "T",
      "NATIONAL_ID_NO": "5",
      "MARITAL_STATUS": "M",
      "GENDER": "M",
      "QUALIFICATION": "SLC",
      "DEPTID": 5,
      "JoiningDate": "2017-10-17T00:00:00",
      "departments": null,
      "Photo": null,
      "base64": null
    },
    "courses": {
      "CourseID": 1012,
      "CourseName": "Math",
      "CourseLevel": 0,
      "CourseInstructor1": "Kennedy Joseph",
      "CourseInstructor2": "Haviva Nielsen",
      "CourseInstructor3": "Bruno Fry",
      "ClassNo": 8,
      "UT_PM": 20,
      "UT_FM": 50,
      "Terminal_PM": 40,
      "Terminal_FM": 100
    }
  },
  {
    "ID": 2013,
    "ClassRoom_ID": 5,
    "DayOfTheWeek": "2",
    "StartTime": "2017-03-20T10:37:00",
    "EndTime": "2017-03-20T11:37:00",
    "EmpID": 5,
    "classNO": 8,
    "CourseID": 2013,
    "teachers": {
      "EmpID": 5,
      "NAME": "Kennedy Joseph",
      "PHONE_NO": "05 49 81 27 99",
      "MOBILE_NO": "16330902-1552",
      "EMAIL": "Cras@metusfacilisislorem.co.uk",
      "DESIGNATION": "Mason Nielsen",
      "PERMANENT_ADDRESS": "Ap #468-4208 Etiam Rd.",
      "TEMP_ADDRESS": "Ap #383-2738 Dui Road",
      "DOB": "1956-01-21T00:00:00",
      "TEACHER_OR_NONTEACHER": "T",
      "NATIONAL_ID_NO": "8",
      "MARITAL_STATUS": "S",
      "GENDER": "M",
      "QUALIFICATION": "Others",
      "DEPTID": 5,
      "JoiningDate": "2016-10-03T00:00:00",
      "departments": null,
      "Photo": "/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAEsASwDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD5/ooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA//2Q==",
      "base64": null
    },
    "courses": {
      "CourseID": 2013,
      "CourseName": "English",
      "CourseLevel": 0,
      "CourseInstructor1": "Gabriel Boone",
      "CourseInstructor2": "Georgia Reeves",
      "CourseInstructor3": "Doris Marquez",
      "ClassNo": 8,
      "UT_PM": 15,
      "UT_FM": 100,
      "Terminal_PM": 40,
      "Terminal_FM": 100
    }
  }
]

FragmentClassTest

public class FragmentClassTest extends Fragment {


    LinearLayout sunday, sundaySchedule, monday, mondayClass, tuesday, tuesdayClass, wednesday, wednesdayClass, thrusday, thrusdayClass, friday, fridayClass;

    public static final String Navigation_URL = "http://192.168.100.5:84/api/employeeApi/timeTableByClass";
    String master_id;
    TextView WeekofDay, mondaysubject;
    String day;


    ListView listViewStudentClass;
    List<ClassScheduleStudent> classschedulestudent = new ArrayList<ClassScheduleStudent>();
    String access_token;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

        View view = inflater.inflate(R.layout.class_schedule_listitem_student, container, false);
        setHasOptionsMenu(true);

        sunday = (LinearLayout) view.findViewById(R.id.sunday);
        monday = (LinearLayout) view.findViewById(R.id.monday);
        tuesday = (LinearLayout) view.findViewById(R.id.tuesday);
        wednesday = (LinearLayout) view.findViewById(R.id.wednesday);
        thrusday = (LinearLayout) view.findViewById(R.id.thrusday);
        friday = (LinearLayout) view.findViewById(R.id.friday);


        sundaySchedule = (LinearLayout) view.findViewById(R.id.sunday_class);
        mondayClass = (LinearLayout) view.findViewById(R.id.monday_class);
        tuesdayClass = (LinearLayout) view.findViewById(R.id.tuesday_class);
        wednesdayClass = (LinearLayout) view.findViewById(R.id.wednesday_class);
        thrusdayClass = (LinearLayout) view.findViewById(R.id.thrusday_class);
        fridayClass = (LinearLayout) view.findViewById(R.id.friday_class);


        WeekofDay = (TextView) view.findViewById(R.id.DayofWeek);

        listViewStudentClass = (ListView) view.findViewById(R.id.list_class_schedule);


        //   sundaySchedule.setVisibility(View.VISIBLE);
        //   mondayClass.setVisibility(View.GONE);
        //   tuesdayClass.setVisibility(View.GONE);
        //   wednesdayClass.setVisibility(View.GONE);
        //   thrusdayClass.setVisibility(View.GONE);
        //   fridayClass.setVisibility(View.GONE);


        SessionManagement session = new SessionManagement(getContext());
        session.checkLogin();
        master_id = session.getMasterId();
        access_token = session.getAccesstToken();


        makeJsonObjectRequest();
        return view;
    }

    ClassScheduleStudent classScheduleStudent;


    private void makeJsonObjectRequest() {

        RequestQueue requestQueue = Volley.newRequestQueue(getContext());
        String URL = Navigation_URL + "?Sid=" + master_id;
        System.out.println(URL);

        StringRequest stringRequest = new StringRequest(Request.Method.GET, URL,
                new Response.Listener<String>() {
                    @Override
                    public void onResponse(String response) {
                        try {


                            ArrayList<ClassScheduleStudent> student_list_student_fee = new ArrayList<>();
                            List<JSONObject> dayone=new ArrayList<>();
                            List<JSONObject> daytwo=new ArrayList<>();
                            List<JSONObject> daythree=new ArrayList<>();




                            JSONArray jArray = new JSONArray(response);
                            //  studentFeeInformation = new StudentFeeInformation(response);
                            for (int i = 0; i < jArray.length(); i++) {
                                JSONObject jsonObject = jArray.getJSONObject(i);
                                day = jsonObject.getString("DayOfTheWeek");


                                switch (day) {
                                    case "1":  //for sunday

                                        String classId=jsonObject.getString( "ClassRoom_ID");
                                        dayone.add(jsonObject);

                                        //...... parse data//
                                        break;
                                    case "2":  //for monday

                                        break;
                                    case "3":
//...... do your code//
                                        break;
                                    case "4":
//...... do your code//
                                        break;
                                    case "5":
                                        break;
                                    case "6":
                                        break;
                                    case "7":
                                        break;
                                }






                             /*   String Description = jsonObject.getString("teachers");
                                JSONArray jArray1 = new JSONArray(Description);

                                //   JSONArray descriptionArray = jsonObject.getJSONArray("Description");

                                for (int j = 0; j < jArray1.length(); j++) {
                                    JSONObject jsonObjectinner = jArray1.getJSONObject(j);


                                  String  Descriptionlist = jsonObjectinner.getString("NAME");


                                }   */


                                student_list_student_fee.add(new ClassScheduleStudent(day));


                            }


                            //  JSONObject studentDetails_obj = jsonObject.getJSONObject("studentDetails");
                            // studentInformation.GuardianStudentId = studentDetails_obj.getString("StdID");


                            //  JSONObject studentDetails_obj1 = jsonObject.getJSONObject("stdCategory");
                            //  studentInformation.Category = studentDetails_obj1.getString("Category");
                            //  studentInformation.CategoryId = studentDetails_obj1.getString("Cat_ID");


                            for(JSONObject jobj: dayone){
                                String classId=jobj.getString("ClassRoom_ID"); //class id of dayone
                            }

                            ClassScheduleStudentAdapter customFeeListStudentAdapter = new ClassScheduleStudentAdapter(getActivity(), student_list_student_fee);
                            listViewStudentClass.setAdapter(customFeeListStudentAdapter);


                        } catch (JSONException e) {
                            Toast.makeText(getContext(), "Fetch failed!", Toast.LENGTH_SHORT).show();
                            e.printStackTrace();
                        }

                    }

                }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                Toast.makeText(getContext(), error.toString(), Toast.LENGTH_LONG).show();
            }
        }) {

            @Override
            public Map<String, String> getHeaders() throws AuthFailureError {
                Map<String, String> headers = new HashMap<String, String>();
                headers.put("Authorization", "Bearer " + access_token);
                headers.put("Content-Type", "application/x-www-form-urlencoded");
                return headers;
            }
/*
            @Override
            protected Map<String, String> getParams() throws com.android.volley.AuthFailureError {
                Map<String, String> map = new HashMap<String, String>();

                map.put("id", master_id);
                map.put("accessID", accessID);
                map.put("currentUser", master_id);
                return map;

            }    */
        };


        requestQueue.add(stringRequest);

    }

Can this be grouped by date? I am completely confused. How can I do that.

+4
source share
4 answers

I decided to use the idea of ​​kiranBenny slution

 private void makeJsonObjectRequest() {

        RequestQueue requestQueue = Volley.newRequestQueue(getContext());
        String URL = Navigation_URL + "?Sid=" + master_id;
        StringRequest stringRequest = new StringRequest(Request.Method.GET, URL,
                new Response.Listener<String>() {
                    @Override
                    public void onResponse(String response) {
                        try {


                            ArrayList<ClassScheduleStudent> student_list_class_schedule_sunday = new ArrayList<>();
                            ArrayList<ClassScheduleStudent> student_list_class_schedule_monday = new ArrayList<>();
                            ArrayList<ClassScheduleStudent> student_list_class_schedule_tuesday = new ArrayList<>();
                            ArrayList<ClassScheduleStudent> student_list_class_schedule_wednesday = new ArrayList<>();
                            ArrayList<ClassScheduleStudent> student_list_class_schedule_thursday = new ArrayList<>();
                            ArrayList<ClassScheduleStudent> student_list_class_schedule_friday = new ArrayList<>();
                            ArrayList<ClassScheduleStudent> student_list_class_schedule_saturday = new ArrayList<>();
                            JSONArray jArray = new JSONArray(response);
                            for (int i = 0; i < jArray.length(); i++) {


                                JSONObject jsonObject = jArray.getJSONObject(i);
                                day = jsonObject.getString("DayOfTheWeek");

                                if (day.equals("1")) {
                                    JSONObject studentDetails_obj = jsonObject.getJSONObject("teachers");
                                    JSONObject studentDetails_course = jsonObject.getJSONObject("courses");
                                    SubjectName = (String) studentDetails_course.get("CourseName");
                                    TeacherName = studentDetails_obj.getString("NAME");
                                    StartTime = jsonObject.getString("StartTime").substring(11, 19);
                                    EndTime = jsonObject.getString("EndTime").substring(11, 19);
                                    student_list_class_schedule_sunday.add(new ClassScheduleStudent(SubjectName, TeacherName, StartTime, EndTime));
                                } else if (day.equals("2")) {
                                    JSONObject studentDetails_obj = jsonObject.getJSONObject("teachers");
                                    JSONObject studentDetails_course = jsonObject.getJSONObject("courses");
                                    SubjectName = (String) studentDetails_course.get("CourseName");
                                    TeacherName = studentDetails_obj.getString("NAME");
                                    StartTime = jsonObject.getString("StartTime").substring(11, 19);
                                    EndTime = jsonObject.getString("EndTime").substring(11, 19);
                                    student_list_class_schedule_monday.add(new ClassScheduleStudent(SubjectName, TeacherName, StartTime, EndTime));

                                } else if (day.equals("3")) {
                                    JSONObject studentDetails_obj = jsonObject.getJSONObject("teachers");
                                    JSONObject studentDetails_course = jsonObject.getJSONObject("courses");
                                    SubjectName = (String) studentDetails_course.get("CourseName");
                                    TeacherName = studentDetails_obj.getString("NAME");
                                    StartTime = jsonObject.getString("StartTime").substring(11, 19);
                                    EndTime = jsonObject.getString("EndTime").substring(11, 19);
                                    student_list_class_schedule_tuesday.add(new ClassScheduleStudent(SubjectName, TeacherName, StartTime, EndTime));

                                } else if (day.equals("4")) {
                                    JSONObject studentDetails_obj = jsonObject.getJSONObject("teachers");
                                    JSONObject studentDetails_course = jsonObject.getJSONObject("courses");
                                    SubjectName = (String) studentDetails_course.get("CourseName");
                                    TeacherName = studentDetails_obj.getString("NAME");
                                    StartTime = jsonObject.getString("StartTime").substring(11, 19);
                                    EndTime = jsonObject.getString("EndTime").substring(11, 19);
                                    student_list_class_schedule_wednesday.add(new ClassScheduleStudent(SubjectName, TeacherName, StartTime, EndTime));

                                } else if (day.equals("5")) {
                                    JSONObject studentDetails_obj = jsonObject.getJSONObject("teachers");
                                    JSONObject studentDetails_course = jsonObject.getJSONObject("courses");
                                    SubjectName = (String) studentDetails_course.get("CourseName");
                                    TeacherName = studentDetails_obj.getString("NAME");
                                    StartTime = jsonObject.getString("StartTime").substring(11, 19);
                                    EndTime = jsonObject.getString("EndTime").substring(11, 19);
                                    student_list_class_schedule_thursday.add(new ClassScheduleStudent(SubjectName, TeacherName, StartTime, EndTime));

                                } else if (day.equals("6")) {
                                    JSONObject studentDetails_obj = jsonObject.getJSONObject("teachers");
                                    JSONObject studentDetails_course = jsonObject.getJSONObject("courses");
                                    SubjectName = (String) studentDetails_course.get("CourseName");
                                    TeacherName = studentDetails_obj.getString("NAME");
                                    StartTime = jsonObject.getString("StartTime").substring(11, 19);
                                    EndTime = jsonObject.getString("EndTime").substring(11, 19);
                                    student_list_class_schedule_friday.add(new ClassScheduleStudent(SubjectName, TeacherName, StartTime, EndTime));

                                } else {

                                    JSONObject studentDetails_obj = jsonObject.getJSONObject("teachers");
                                    JSONObject studentDetails_course = jsonObject.getJSONObject("courses");
                                    SubjectName = (String) studentDetails_course.get("CourseName");
                                    TeacherName = studentDetails_obj.getString("NAME");
                                    StartTime = jsonObject.getString("StartTime").substring(11, 19);
                                    EndTime = jsonObject.getString("EndTime").substring(11, 19);
                                    student_list_class_schedule_friday.add(new ClassScheduleStudent(SubjectName, TeacherName, StartTime, EndTime));


                                }

                            }


                            ClassScheduleStudentAdapter classScheduleStudentAdatptersunday = new ClassScheduleStudentAdapter(getActivity(), student_list_class_schedule_sunday);
                            ClassScheduleStudentAdapter classScheduleStudentAdatptermonday = new ClassScheduleStudentAdapter(getActivity(), student_list_class_schedule_monday);
                            ClassScheduleStudentAdapter classScheduleStudentAdatptertuesday = new ClassScheduleStudentAdapter(getActivity(), student_list_class_schedule_tuesday);
                            ClassScheduleStudentAdapter classScheduleStudentAdatpterwednesday = new ClassScheduleStudentAdapter(getActivity(), student_list_class_schedule_wednesday);
                            ClassScheduleStudentAdapter classScheduleStudentAdatpterthursday = new ClassScheduleStudentAdapter(getActivity(), student_list_class_schedule_thursday);
                            ClassScheduleStudentAdapter classScheduleStudentAdatpterfriday = new ClassScheduleStudentAdapter(getActivity(), student_list_class_schedule_friday);
                            ClassScheduleStudentAdapter classScheduleStudentAdatptersaturday = new ClassScheduleStudentAdapter(getActivity(), student_list_class_schedule_saturday);
                            listViewStudentClass_Sunday.setAdapter(classScheduleStudentAdatptersunday);
                            listViewStudentClass_Monday.setAdapter(classScheduleStudentAdatptermonday);
                            listViewStudentClass_Tuesday.setAdapter(classScheduleStudentAdatptertuesday);
                            listViewStudentClass_Wednesday.setAdapter(classScheduleStudentAdatpterwednesday);
                            listViewStudentClass_Thursday.setAdapter(classScheduleStudentAdatpterthursday);
                            listViewStudentClass_Friday.setAdapter(classScheduleStudentAdatpterfriday);
                            listViewStudentClass_Saturday.setAdapter(classScheduleStudentAdatptersaturday);


                        } catch (JSONException e) {
                            Toast.makeText(getContext(), "Fetch failed!", Toast.LENGTH_SHORT).show();
                            e.printStackTrace();
                        }
                    }

                }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                Toast.makeText(getContext(), error.toString(), Toast.LENGTH_LONG).show();
            }
        }) {

            @Override
            public Map<String, String> getHeaders() throws AuthFailureError {
                Map<String, String> headers = new HashMap<String, String>();
                headers.put("Authorization", "Bearer " + access_token);
                headers.put("Content-Type", "application/x-www-form-urlencoded");
                return headers;
            }
/*
            @Override
            protected Map<String, String> getParams() throws com.android.volley.AuthFailureError {
                Map<String, String> map = new HashMap<String, String>();

                map.put("id", master_id);
                map.put("accessID", accessID);
                map.put("currentUser", master_id);
                return map;

            } */
        };


        requestQueue.add(stringRequest);

    }
0
source

You can try it with switch(). You can split the day into "DayOfTheWeek" (I think).

EDIT: YOU CAN USE ArrayList to combine this day together. Declare it globally;

List<JSONObject> dayone=new ArrayList<>();
List<JSONObject> daytwo=new ArrayList<>();
List<JSONObject> daythree=new ArrayList<>();
....

And in code

    JSONArray jarr=new JSONArray(responseString);
    for(int i=0;i<jarr.length;i++){
     JSONObject obj=jarr.getJSONObject(i);
    String day=obj.getString("DayOfTheWeek");
    switch(day){
     case "1":  //for sunday
     String classId=obj.getString(ClassRoom_ID);
     dayone.add(obj);   //object ob day one
    //...... parse data//
     break;
     case "2":  //for monday
//...... do your code//
    daytwo.add(obj);   //object ob day two
     break;
    case "3":
//...... do your code//
     break;
    case "4":
//...... do your code//
     break;
    case "5":
     break;
    case "6":
     break;
    case "7":
     break;
 }
}
for(JSONObject jobj: dayone){
    String classId=jobj.getString(ClassRoom_ID); //class id of dayone
}

: , Java 7

+3

TreeMap<String, List<JSONObject>>?

.

Map<String, List<JSONObject>> map = new TreeMap<>();

JSONArray jarr=new JSONArray(responseString);
for(int i = 0; i < jarr.length; i++) {
    JSONObject obj = jarr.getJSONObject(i);
    String day = obj.getString("DayOfTheWeek");

    // Get the list
    List<JSONObject> jsonList;
    if (map.containsKey(day)) {
       jsonList = map.get(day);
    } else {
        jsonList = new ArrayList<JSONObject>();
    }

    // Add to the list
    JSONObject obj = new JSONObject(); // for example
    // obj.put(key, value);            // for example 

    jsonList.add(obj);

    // Update the list
    map.put(key, jsonList);

}
Log.d("grouped values", map.toString());

-,

Map(
    1 -> [ ... ]
    2 -> [ ... ]
    3 -> [ ... ]
)
+1

, :


Collections.sort(list, new Comparator<String>() {
    @Override
    public int compare(String s1, String s2) {
        return s1.compareToIgnoreCase(s2);
    }
});

0

Source: https://habr.com/ru/post/1672777/


All Articles