问题
仔细看看谷歌后,我发现这个link描述了差异,但从语法的角度来看。
在编程场景中何时优先于另一个?
#1 热门回答(155 赞)
当你在Android中使用JSON数据时,你将使用JSONArray来解析以数组括号开头的JSON。 JSON中的数组用于组织相关项的集合(可以是JSON对象)。
例如:[{"name":"item 1"},{"name": "item2} ]
另一方面,当处理以花括号开头的JSON时,你会使用JSONObject。 JSON对象通常用于包含与一个项相关的键/值对。例如:{"name": "item1", "description":"a JSON object"}
当然,JSON数组和对象可以彼此嵌套。一个常见的例子是API,它返回一个JSON对象,其中包含一些元数据以及与你的查询匹配的项目数组:
{"startIndex": 0, "data": [{"name":"item 1"},{"name": "item2"} ]}
#2 热门回答(88 赞)
差异与(哈希) Map 与列表相同。
JSONObject:-包含命名值(键 - >值对,元组或任何你想要调用的值),如{ID:1}
元素顺序并不重要{id:1,name:'B'}的JSONObject等于{name:'B',id:1}。
JSONArray:-仅包含[1,'value']等系列值
值的顺序是[1,'value']的重要数组与['value',1]不同
例
JSON Object --> { "":""}
JSON Array --> [ , , , ]
{"employees":[
{"firstName":"John", "lastName":"Doe"},
{"firstName":"Anna", "lastName":"Smith"},
{"firstName":"Peter", "lastName":"Jones"}
]}
#3 热门回答(20 赞)
最佳编程理解。
当语法为{}时,当语法为[]时,这是JsonObject,那么这就是JsonArray
AJSONObject是一个类似JSON的对象,可以表示为JSONArray.JSONArray中的元素,可以包含一个(或多个)JSONObject
希望这对你有所帮助!