Después de echar un breve vistazo a Google encontré este link que describe la diferencia, pero desde el punto de vista de la sintaxis.Diferencia entre JSONObject y JSONArray
¿Cuándo se preferiría uno sobre el otro en un escenario de programación?
Después de echar un breve vistazo a Google encontré este link que describe la diferencia, pero desde el punto de vista de la sintaxis.Diferencia entre JSONObject y JSONArray
¿Cuándo se preferiría uno sobre el otro en un escenario de programación?
Cuando está trabajando con datos JSON en Android, usaría JSONArray
para analizar JSON, que comienza con los corchetes de la matriz. Las matrices en JSON se utilizan para organizar una colección de elementos relacionados (que podrían ser objetos JSON).
Por ejemplo: [{"name":"item 1"},{"name": "item2} ]
Por otro lado, se usaría JSONObject
cuando se trata de JSON que comienza con llaves. Un objeto JSON se usa generalmente para contener pares clave/valor relacionados con un elemento. Por ejemplo: {"name": "item1", "description":"a JSON object"}
Por supuesto, las matrices JSON y los objetos pueden estar anidados uno dentro del otro. Un ejemplo común de esto es una API que devuelve un objeto JSON que contiene algunos metadatos junto con una matriz de los elementos que coincidan con su consulta:
{"startIndex": 0, "data": [{"name":"item 1"},{"name": "item2"} ]}
Siempre utilizo objeto, es más fácilmente extensible, matriz JSON no lo es. Por ejemplo, originalmente tenía algunos datos como una matriz json, y luego necesitaba agregar un encabezado de estado en el que estaría un poco bloqueado, a menos que anidara los datos en un objeto. La única desventaja es un ligero aumento en la complejidad de creación/análisis.
Así que en lugar de
[datum0, datum1, datumN]
Tendrías
{data: [datum0, datum1, datumN]}
, posteriormente, se puede añadir más ...
{status: "foo", data: [datum0, datum1, datumN]}
La diferencia es lo mismo que un (Hash) Mapa vs Lista.
JSONObject:
{ID : 1}
{id: 1, name: 'B'}
es igual a {name: 'B', id: 1}
.JSONArray:
[1, 'value']
[1,'value']
no es el mismo que ['value',1]
Ejemplo
JSON Object --> { "":""}
JSON Array --> [ , , , ]
{"employees":[
{"firstName":"John", "lastName":"Doe"},
{"firstName":"Anna", "lastName":"Smith"},
{"firstName":"Peter", "lastName":"Jones"}
]}
esta es la respuesta más interesante del grupo – dynamic
mejor programación comprensión.
cuando sintaxis es
{}
entonces este esJsonObject
cuando sintaxis es
[]
entonces este esJsonArray
Esperamos que esto útil para usted!
objeto: Un objeto es un conjunto desordenado de pares de nombre/valor. Un objeto comienza con {(corchete izquierdo) y termina con} (corchete derecho). A cada nombre le sigue: (dos puntos) y los pares nombre/valor están separados por, (coma).
array: Una matriz es una colección ordenada de valores. Una matriz comienza con [(corchete izquierdo) y termina con] (corchete derecho). Los valores están separados por, (coma).
{ "startIndex": 0, [{ "name": "el punto 1"}, { "name": "elemento2"}]} no es ni un jsonbject ni un JSONArray he editado que –