JSONObject,JSONArray是JSON的两个子类。json
首先咱们来看JSONObject源码:spa
会发现JSONObject是继承Map<String, Object>,而且都是使用的Map中的方法。能够说JSONObject至关于Map<String, Object>code
看个具体的列子:对象
/** * 将Map转成JSONObject,而后添加元素,输出 */ @Test public void testJsonObject() { Map<String, Object> testMap = new HashMap<>(); testMap.put("key1", "value1"); testMap.put("key2", "value2"); JSONObject jsonObj = new JSONObject(testMap); jsonObj.put("key3", "value3"); System.out.println(jsonObj); System.out.println(jsonObj.get("key2")); }
运行结果:blog
{"key1":"value1","key2":"value2","key3":"value3"} value2
看JSONArray的源码:继承
会发现JSONArray是继承List<Object>,而且都是使用的List中的方法。能够说JSONArray至关于List<Object>get
具体的列子:源码
/** * 将List对象转成JSONArray,而后输出 */ @Test public void testJsonArray() { List<Object> list = new ArrayList<>(); list.add("home"); list.add(60); list.add(true); list.add(new XwjUser(1, "Hello World", new Date())); JSONArray jsonArr = JSONArray.parseArray(JSON.toJSONString(list)); System.out.println(jsonArr); }
运行结果:class
["home",60,true,{"id":1,"message":"Hello World","sendTime":1525237337937}]