JSONArray與JSONObject的區別與使用

一、JSONObject和JSONArray的數據表示形式

JSONObject的數據是用 { } 來表示的,

{
    "id":"123",
    "courseID":"huangt-test",
    "title":"提交作業",
    "content":null
}

而JSONArray,顧名思義是由JSONObject構成的數組,用 [ { } , { } , … , { } ] 來表示

[
    {
        "id":"123",
        "courseID":"huangt-test",
        "title":"提交作業"
    },
    {
        "content":null,
        "beginTime":1398873600000,
        "endTime":"1"
    }
]
    表示了包含2個JSONObject的JSONArray。

可以看到一個很明顯的區別,一個用的是 { } ,一個最外面用的是 [ ] ;

二、如何從字符串String獲得JSONObject對象和JSONArray對象

  JSONObject  jsonObject  = new JSONObject(String str);
  JSONArray jsonArray = new JSONArray(String str);

三、如何從JSONArray中獲得JSONObject對象

大家可以把JSONArray當成一般的數組來對待,只是獲取的數據內數據的方法不一樣

JSONObject   jsonObject = (JSONObject)jsonArray.get(i);
JSONObject   jsonObject  =  jsonArray.getJSONObject(i) ;  

兩者都可,第一種注意轉換

四、獲取JSON內的數據

int   jid= jsonObject.getInt ( "id" ) ;    //  這裏的jid得到的數據就是123.
String  jcourse=jsonObject.getString( "courseID") ;   // 這裏的jcourse得到的數據就是huangt-test.
Strirng jcourse = jsonObject.get("courseID").toString();

五、一般地爲鍵值對

eg:{ name:“xm”, value:“張三”}

String jname = null;
if(jsonObject.get("name").equals("xm")){
    jname=jsonObject.get("value").toString();
}

六、字符串轉換

JSON.parse( str ) --> 把字符串轉爲JSON對象
JSON.stringify( obj ) -->把對象解析爲字符串

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章