Hola César
Te agradezco, que dentro de la corrección que siempre usas en tus mensajes para corregir, enmendar y aleccionar a los aprendices (entre los que me incluyo), tengas talante para seguir la broma (hablo de mí). Yo te pido que me ilumines, y tú me hablas de una linterna.
Pero he de decirte, que aunque pueda parecer una broma, tus observaciones traen luz, desvelan misterios y derriban barreras.
¿Recuerdas esos chistes gráficos en que a uno se le enciende una bombilla en la cabeza?
Es lo que pasa cuando uno descubre el camino que estaba fuera de su visión.
Que dice. ¡Eureka! Lo encontré.
Gracias a la bombilla, o la linterna, es igual.
Hablando del código que has enviado, veo que uno de los cambios que has hecho, es que en la declaración del Iterator no especificas el tipo a recorrer.
Iterator itHS = tmpSet.iterator();
Cuando yo usaba:
Iterator <String> itHS = tmpSet.iterator();
Y ese cambio tan nimio ha eliminado el warning.
Como otras veces, tomo nota de vuestra experiencia.
¡No es obligado declarar el tipo a recorrer en la declaración del Iterator!. Aunque no se si una sintaxis es la formal y la otra es para situaciones... ¿especiales?, o las dos son válidas indistintamente.
De momento tomo nota de tus observaciones.
Saludos.