JSONObject的数据用{}来表示,如:
{ "id" : "123", "courseID" : "huangt-test", "title" : "提交作业"} ?
JSONArray是由JSONObject构成的数组,用[{},{}]来表示,如:
[{"id" : "123", "courseID" : "huangt-test", "title" : "提交作业"}, ?{"beginTime" : 1398873600000 ?"endTime"}] ;
接下来看一下具体的例子:
package jsontest;import net.sf.json.JSONArray;import net.sf.json.JSONObject;public class JSONObjectSample { ???// 创建JSONObject对象 ???private static JSONObject createJSONObject() { ???????JSONObject jsonObject = new JSONObject(); ???????jsonObject.put("username", "huangwuyi"); ???????jsonObject.put("sex", "男"); ???????jsonObject.put("QQ", "413425430"); ???????jsonObject.put("Min.score", new Integer(99)); ???????jsonObject.put("nickname", "梦中心境"); ???????return jsonObject; ???} ???public static void main(String[] args) { ???????JSONObject jsonObject = JSONObjectSample.createJSONObject(); ???????// jsonObject:{"username":"huangwuyi","sex":"男","QQ":"413425430","Min.score":99,"nickname":"梦中心境"} ???????System.out.println("jsonObject:" + jsonObject); ???????boolean isArray = jsonObject.isArray(); ?//false ???????boolean isEmpty = jsonObject.isEmpty(); ?//false ???????boolean isNullObject = jsonObject.isNullObject(); ?//false ???????// 添加属性 ???????jsonObject.element("address", "福建省厦门市"); ???????// 返回一个JSONArray对象 ???????JSONArray jsonArray = new JSONArray(); ???????jsonArray.add(0, "this is a jsonArray value"); ???????jsonArray.add(1, "another jsonArray value"); ???????jsonObject.element("jsonArray", jsonArray); ???????//获取追加的名为"jsonArray"的一个jsonArray ???????JSONArray array = jsonObject.getJSONArray("jsonArray"); ???????//{"username":"huangwuyi","sex":"男","QQ":"413425430","Min.score":99,"nickname":"梦中心境","address":"福建省厦门市","jsonArray":["this is a jsonArray value","another jsonArray value"]} ???????System.out.println(jsonObject); ???????// 根据key返回一个字符串 ???????String username = jsonObject.getString("username"); ???????// 把字符转换为 JSONObject ???????String temp = jsonObject.toString(); ???????JSONObject object = JSONObject.fromObject(temp); ???}}
注意一下JSONObject的put()和element()方法的区别:
public Object put (Object key, Object value):
将value映射到key下。如果此JSONObject对象之前存在一个value在这个key下,当前的value会替换掉之前的value
public JSONObject element (String key, Object value):
将键/值对放到这个JSONObject对象里面。如果当前value为空(null),那么如果这个key存在的话,这个key就会移除掉。
JSONArray和JSONObject
原文地址:https://www.cnblogs.com/lyy-2016/p/9197678.html