hashCode y es igual para Collections.unmodifiableCollection ()

losCollections la clase tiene varios métodos de ayuda estática para proporcionar vistas de solo lectura de varios tipos de colección, comounmodifiableSet(), unmodifiableList(), etc. Para estos objetos de vista, lahashCode() yequals() Los métodos reenvían las llamadas a la colección subyacente ... Con una excepción impar:unmodifiableCollection().

El JavaDocdeclara explícitamente:

La colección devuelta haceno pasa el hashCode y es igual a las operaciones a través de la colección de respaldo, pero se basa enObjectesequals yhashCode metodos Esto es necesario para preservar los contratos de estas operaciones en el caso de que la colección de respaldo sea un conjunto o una lista.

Mi pregunta: ¿De qué se trata esto? Si la colección de respaldo es un conjunto o una lista, esperaría un comportamiento consistente conunmodifiableSet() yunmodifiableList(). ¿Cómo violaría eso el hashCode / es igual a los contratos?

Respuestas a la pregunta(1)

Su respuesta a la pregunta