sirve recorrer que patron para obtener implementar elemento ejemplo java android json

recorrer - patron iterator java ejemplo



Tipo de advertencia de seguridad con iterador JSON (2)

Mi problema proviene de obtener un iterador de un JSONObject.

Código que genera 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: Tipo de seguridad: la expresión de tipo Iterator necesita una conversión sin marcar para ajustarse a Iterator.

Entonces la pregunta es ¿cómo puedo erradicar esta advertencia?

¡Muchas gracias!


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

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

¡Aclamaciones!


Me doy cuenta de que este es un hilo viejo, pero para futuros buscadores ...

también puede inferir un genérico y emitir los retornos de los métodos del iterador ...

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