Я не уверен, что если в вашей реализации вы пытаетесь сделать это с помощью петли или рекурсии, но жестко прописывать значения в JSONObject
вы можете выполнить структуру, которую вы ищете с этим:
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
public class Test {
public static void main(String[] args) throws JSONException {
JSONObject leaf = new JSONObject().put("name", "500 ML");
JSONObject lemon = new JSONObject().put("name", "Lemon").put("leaf", new JSONArray().put(leaf));
JSONObject orange = new JSONObject().put("name", "Orange").put("leaf", new JSONArray().put(leaf));
JSONArray t3Array = new JSONArray().put(lemon).put(orange);
JSONObject bottled = new JSONObject().put("name", "Bottled").put("T3", t3Array);
JSONObject fountain = new JSONObject().put("name", "Fountain").put("T3", t3Array);
JSONObject softDrink = new JSONObject().put("T2", new JSONArray().put(bottled).put(fountain));
JSONObject json = new JSONObject().put("Soft Drinks", softDrink);
System.out.println(json);
}
}
You похоже, производят действительный JSON. Что вы подразумеваете под «полностью потерянным»? –
@DavidEhrmann, я не могу поставить leafobj внутри t3data, не могли бы вы помочь – Pawan
Можете ли вы привести пример своего неправильного вывода json? –