Tipo Advertencia de seguridad con Iterator JSON

Mi problema viene de conseguir un Iterator de un JSONObject.

Código generador de error en su forma más simple:

String json = client.retrieveList(); JSONObject jsonList = new JSONObject(json); Iterator<String> i = jsonList.keys(); while(i.hasNext()) { String next = i.next(); JSONArray jsonArray = jsonList.getJSONArray(next); // Do stuff with jsonArray, example: jsonArray.getString(0), jsonArray.getString(1); } 

La advertencia exacta es: Seguridad de tipo: La expresión del tipo Iterator necesita una conversión sin marcar para ajustarse a Iterator

Así que la pregunta es ¿cómo puedo erradicar esta advertencia?

¡Muchas gracias!

2 Solutions collect form web for “Tipo Advertencia de seguridad con Iterator JSON”

Me doy cuenta de que este es un hilo antiguo, pero para los futuros buscadores …

También puede inferir un genérico y emitir los retornos de los métodos iterador …

 Iterator<?> i = jsonList.keys(); while(i.hasNext()) { String next = (String) i.next(); ... 

Cuando mezcla su código con las antiguas API-s heredadas, puede obtener este tipo de advertencias. Si realmente desea "erradicar" la advertencia, puede utilizar la anotación SuppressWarnings. Es una buena práctica dejar un comentario junto a una advertencia suprimida. En su caso esto puede parecer:

 @SuppressWarnings("unchecked") //Using legacy API Iterator<String> i = jsonList.keys(); 

¡Aclamaciones!

  • Serializador personalizado - deserializador utilizando GSON para una lista de BasicNameValuePairs
  • Java OBJECT a JSONObject
  • Convertir la fecha JSON en el formato "mm dd aaaa"
  • Android JSon error "Esperaba BEGIN_OBJECT pero era BEGIN_ARRAY en la línea 1 columna 2"
  • Análisis de un ID de cadena con SugarORM y GSON
  • ¿Cómo puede obtener una lista de campos JSON no reconocidos en Gson como el @JsonAnySetter de Jackson?
  • Cómo convertir json objeto en cadena en android ..?
  • Error de autenticación: no se puede responder a ninguno de estos desafíos: {} Android - 401 no autorizado
  • Retrofit 2.0 java.lang.IllegalStateException: Se esperaba BEGIN_ARRAY pero era STRING
  • Cómo analizar una clave JSON dinámica en un resultado anidado JSON?
  • JacksonParser databind y la causa principal "Encontró archivo duplicado para APK"?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.