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.
El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android…
En este post te voy a enseñar a designar una carpeta para imprimir todos los…
En este artículo te voy a enseñar la guía para imprimir en una impresora térmica…
Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa…
Los usuarios del plugin para impresoras térmicas pueden contratar licencias, y en ocasiones me han…
Hoy voy a enseñarte cómo imprimir el € en una impresora térmica. Vamos a ver…
Esta web usa cookies.
Ver comentarios
El código funciona bastante bien gracias..