JSONObject和JSONArray的區別

http://blog.csdn.net/xiazdong/article/details/7059573
上面是一個博主寫的,非常不錯。下面再做一些總結:

1.兩者可以添加的數據類型value是相同的。數據類型value 如下:
這裏寫圖片描述
圖1

區別是數組和map的區別,說白了,就是JSONObject中的元素只能通過key來獲得,JSONArray中的元素只能通過數組下標來獲得。

2.JSONArray和普通數組的區別:
普通數組裏元素的數據類型必須相同,比如int[]的元素必須是int,而JSONArray的數組元素只要是數據類型value即可,不需要具體的類型相同。(也可以理解爲JSONArray的數組元素的類型就是value)
最好JSONArray裏面放相同數據類型的元素,這樣操作不容易出錯,比較方便

3.其中JSONOject的value不能爲空但是JSONArray的value的值可以爲空。圖1數據類型中,object指java中的對象都可以用JSONObject來表示(即將java對象的屬性表示爲JSONObject的鍵值對);array值的是java中的數組,list等可以用JSONArray來表示。

4.關於GSON解析
(1)下面是解析JSONObject

gson.fromJson(jsonString, User.class);

(2)下面是解析JSONArray,JSONArray的每個元素是一個JSONObject

gson.fromJson(jsonString,new TypeToken<List<User>>(){}.getType()
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章