Resumen: vamos a ver cómo iterar o recorrer un JSONArray en un ciclo usando el lenguaje de programación Java, ya sea para desktop o mobile.
Cuando usamos JSON en Java, ya sea en el escritorio o con Android, trabajamos con el tipo de dato JSONArray que no es otra cosa más que un arreglo que representa objetos JSON.
Este tipo de dato se utiliza sobre todo cuando trabajamos con APIs externas que devuelven información codificada como JSON.
Se puede obtener la longitud de un JSONArray
con el método length
, a partir del mismo podemos hacer un ciclo y llamar a getJSONObject
dentro del mismo.
Veamos un ejemplo:
// Nota: aquí jsonArray debería venir de una API externa u otro lugar
JSONArray jsonArray = new JSONArray();
for (int i = 0; i < jsonArray.length(); i++) {
try {
JSONObject jsonObject = jsonArray.getJSONObject(i);
if (jsonObject.has("clave")) {
String valor = jsonObject.getString("clave");
// Aquí hacer algo con el valor
}
} catch (JSONException e) {
e.printStackTrace();
}
}
En este caso obtenemos un JSONObject
con el método getJSONObject
(indicando el índice del objeto, para lo cual usamos la variable i
), cuando lo hemos obtenido podemos obtener los datos de ese objeto con getString
, getInt
, etcétera,
Al final, para recorrer un JSONArray
en Java se hace un ciclo for simple.
Recuerda encerrar el código en un try catch
esperando la excepción de tipo JSONException
.
El uso de has
es para comprobar si el objeto tiene esa clave y evitar más errores.
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Esta web usa cookies.
Ver comentarios
El código funciona bastante bien gracias..