一、字符串与json
字符串格式:
static String json = "[{'day1':'work','day2':26},{'day1':123,'day2':26}]";
转换为json数组
JSONArray jsonArray = JSONArray.fromObject(json);
单个json对象转换
static String jobj = {'day1': 1, 'day2': 2};
JSONObject obj = JSONObject.fromObject(jobj);
json转换为java bean
JSONObject jsonObject = JSONObject.fromObject(new JsonBean());
List 转换成json(Map也可以)
List list = new ArrayList();
JsonBean2 jb1 = new JsonBean2();
jb1.setCol(1);
jb1.setRow(1);
jb1.setValue("xx");
JsonBean2 jb2 = new JsonBean2();
jb2.setCol(2);
jb2.setRow(2);
jb2.setValue("");
list.add(jb1);
list.add(jb2);
JSONArray ja = JSONArray.fromObject(list);
二、遍历Json数组
- 输出每个成员
for(int i=0; i<jsonArray.size(); i++){ System.out.println(jsonArray.get(i)); }
- 获取每个成员的key及value
JSONObject obj = (JSONObject) jsonArray.get(i); Iterator it = obj.keys(); while (it.hasNext()) { String key = it.next().toString(); System.out.println("key ----- "+key); System.out.println("value ----- "+obj.get(key)); }
三、修改、添加、删除成员
- 修改
涉及到修改json成员的很少,如果真的要修改的话,个人建议转为字符串然后用replaceAll这个函数进行修改,如果你有更好的建议欢迎给评论。 - 增加
JSONObject obj2 = new JSONObject(); obj2.put("day1", "study"); obj2.put("day2", "2"); jsonArray.add(obj2);
- 删除
jsonArray.remove(index); jsonArray.subList(fromIndex, toIndex)