1、最普通的如果只有集合的话,直接使用Gson依赖集合完成:
implementation 'com.google.code.gson:gson:2.8.5'
TestBean 只有两个String类型的 test1和test2,
List<TestBean> list = new ArrayList<>(); for (int i=0;i<2;i++){ TestBean bean = new TestBean(); bean.setTest1("111"); bean.setTest2("222"); list.add(bean); } String json = new Gson().toJson(list); Log.i("数据","-----> " + json);
打印为:[{"test1":"111","test2":"222"},{"test1":"111","test2":"222"}]
上面比较容易,
2、第二种上传服务端数据,而且为集合形式,,如果直接把上面的集合直接添加到字段中会发现会携带两个引号,一般json中的集合是不带引号的,所以:
JSONArray array = new JSONArray(); JSONObject object = null; JSONObject obj = new JSONObject(); try { for (int i=0;i< 3;i++){ object = new JSONObject(); object.put("item1", "value1"); object.put("age", 12); object.put("name", "tom"); array.put(object); } obj.put("name", array); Log.i("数据","-----> " + obj.toString()); } catch (Exception e) { e.printStackTrace(); }
上面的打印为:{"name":[{"item1":"value1","age":12,"name":"tom"},{"item1":"value1","age":12,"name":"tom"},{"item1":"value1","age":12,"name":"tom"}]}