Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

310
Vistas
¿Por qué el método put de un JSONObject arroja JSONException?

Encontré pocas respuestas aquí sobre cómo manejar esta excepción, pero no hubo explicación de por qué sucedería esto en primer lugar. Tengo el siguiente código:

 for (Map.Entry<String, Double> entry: qosMap.entrySet()) { JSONObject qosEntry = new JSONObject(); try { qosEntry.put(entry.getKey(), entry.getValue()); } catch (JSONException ex) { Logger.getLogger(JSONUtil.class.getName()).log(Level.SEVERE, null, ex); } }

El qosMap nunca estará vacío y los datos de este mapa siempre serán válidos.

¿Cuál sería un caso en el que se lanzaría la excepción? ¿Por qué necesito tener este código extra?

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

verifique los documentos de Java

"Si un valor es un número no finito o si un nombre está duplicado".

https://docs.oracle.com/middleware/maf222/mobile/api-ref/oracle/adfmf/json/JSONObject.html

over 4 years ago · Santiago Trujillo Denunciar

0

Suponiendo que está utilizando JSONObject de org.json

 org.json.JSONObject.put(String, double) : JSONObject

Pone un par clave/ doble en el JSONObject.

Parámetros:

clave: Una cadena clave. valor: Un doble que es el valor.

Devoluciones: this

Lanza:

JSONException Si la clave es nula o si el número no es válido.

Sé que los datos siempre son válidos. ¿Por qué necesito tener este código extra?

Puede hacer que el método arroje la excepción, ya que no le gusta saturar su código y también parece que no puede hacer nada útil al detectar la excepción.

Es obvio que sabes que los datos que pasaste son válidos. Sin embargo, la biblioteca no lo sabrá. Es por eso que lanza una excepción verificada solo para informarle en caso de que falle.

over 4 years ago · Santiago Trujillo Denunciar

0

Para todos los tipos T, JSONObject.put(String key, T value) arroja una excepción JSONException cuando la clave es nula o el valor es un # no finito. Para el tipo doble, también se genera una excepción JSON si el valor doble no es válido. Ver:

https://docs.oracle.com/middleware/maf222/mobile/api-ref/oracle/adfmf/json/JSONObject.html https://developer.android.com/reference/org/json/JSONObject.html

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda