json数组:
[ { "address": "中国", "age": 30, "name": "小明", "sex": "boy" }, { "address": "加拿大", "age": 20, "name": "小雨", "sex": "girl" } ]解析代码如下:
创建对应实体类:
public class Bean { public String name; public int age; public String sex; public String address; }解析代码:
String strJson = "[\n" + " {\n" + " \"address\": \"中国\",\n" + " \"age\": 30,\n" + " \"name\": \"小明\",\n" + " \"sex\": \"boy\"\n" + " },\n" + " {\n" + " \"address\": \"加拿大\",\n" + " \"age\": 20,\n" + " \"name\": \"小雨\",\n" + " \"sex\": \"girl\"\n" + " }\n" + "]"; Gson gson = new Gson();//创建Gson对象 JsonParser jsonParser = new JsonParser(); JsonArray jsonElements = jsonParser.parse(strJson).getAsJsonArray();//获取JsonArray对象 ArrayList<Bean> beans = new ArrayList<>(); for (JsonElement bean : jsonElements) { Bean bean1 = gson.fromJson(bean, Bean.class);//解析 beans.add(bean1); } System.out.println(beans.size()); System.out.println(beans.get(1).name);反过来,如何将对象生成json了,代码如下:
Map<String, Object> map = new HashMap<>(); map.put("name", "小明"); map.put("age", 30); map.put("address", "中国"); map.put("sex", "boy"); List<Map<String, Object>> list = new ArrayList<>(); list.add(map); String s = new Gson().toJson(list);//生成jsonString System.out.println(s);