how to output formatted json code example

Example: how to wirte json format

JSONArray jArray = new JSONArray();
        Countries count =  new Countries();
        count.setNum1(-90.0715);
        count.setNum2(29.9510);
        ArrayList<Countries> ll_conn = new ArrayList<>();
        ll_conn.add(count);
        for (int i = 0; i< ll_conn.size(); i++){
            try {
                jArray.put(ll_conn.get(i).getNum1());
                jArray.put(ll_conn.get(i).getNum2());
            } catch (JSONException e) {
                e.printStackTrace();
            }
        }




        JSONObject jsonObject2  = new JSONObject();
        ArrayList<Countries> list2 = new ArrayList<>();
        Countries countries = new Countries();
        countries.setType("Point");
        list2.add(countries);
        for (int i = 0; i < list2.size(); i++){
            try {
                jsonObject2.put("type",list2.get(i).getType());
                jsonObject2.put("coordinates",jArray);
            } catch (JSONException e) {
                e.printStackTrace();
            }
        }


        JSONObject jsonObject1 =  new JSONObject();
        JSONArray jsonArray1 = new JSONArray();
        Countries countries1 = new Countries();
        countries1.setType("Feature");
        ArrayList<Countries> ll_count1 = new ArrayList<>();
        ll_count1.add(countries1);
        for (int i = 0; i < ll_count1.size(); i++){
            try {
                jsonObject1.put("type",ll_count1.get(i).getType());
                jsonObject1.put("geometry",jsonObject2);

            } catch (JSONException e) {
                e.printStackTrace();
            }
        }
        for (int i = 0; i <3; i++){
            jsonArray1.put(jsonObject1);
        }

        JSONObject jsonObject =  new JSONObject();
        Countries obj_coun = new Countries();
        ArrayList<Countries> ll_Cout = new ArrayList<>();
        obj_coun.setType("FeatureCollection");
        //add all data respone from object countries into ArrayList type of Countries
        ll_Cout.add(obj_coun);
        for (int i = 0; i < ll_Cout.size(); i++) {
            try {
                jsonObject.put("type", ll_Cout.get(i).getType());
                jsonObject.put("features",jsonArray1);
            } catch (JSONException e) {
                e.printStackTrace();
            }
        }
        Log.d(">>>", "jsonObject: "+jsonObject);


==============OutPut================================================
  {"type":"FeatureCollection","features":[{"type":"Feature","geometry":{"type":"Point","coordinates":[-90.0715,29.951]}},{"type":"Feature","geometry":{"type":"Point","coordinates":[-90.0715,29.951]}},{"type":"Feature","geometry":{"type":"Point","coordinates":[-90.0715,29.951]}}]}