2012-08-24 9 views
5

Si mira collection framework verá lo siguiente, pero Map no se encuentra en la lista de interfaces. Mientras hablamos sobre el mapa, decimos que es parte del marco de recopilación, por lo que si Map forma parte del marco de recopilación, entonces por qué no está en la lista de interfaces.La colección Java no tiene Mapa como parte del marco de recopilación

java.util 
Interface Collection 

All Known Subinterfaces: 
    BeanContext, BeanContextServices, List, Set, SortedSet 

All Known Implementing Classes: 
    AbstractCollection, AbstractList, AbstractSet, ArrayList, BeanContextServicesSupport, BeanContextSupport, HashSet, LinkedHashSet, LinkedList, TreeSet, Vector 
+1

Publicación similar: http://stackoverflow.com/questions/5700135/why-does-map-not-extend-collection-interface –

Respuesta

5

Maps trabajan con key/value pairs, mientras que other collections trabajan con just values. El mapa mapea las claves de los valores. Permite que su contenido se vea como un conjunto de claves, una colección de valores y un conjunto de correlaciones de valores-clave.

Revise este enlace. Respuesta de oráculo https://docs.oracle.com/javase/tutorial/collections/

8

"La infraestructura de recogida" y Collection interfaz no son la misma cosa.

Mientras que usted puede considerar un mapa como una colección de entradas, Map no admite que directa - se puede obtener un conjunto de entradas con el método entrySet.

Pero, fundamentalmente, debe distinguir entre "el marco de recopilación" y la interfaz Collection.

0

La interfaz Map no es una extensión de la interfaz Collection. Sin embargo, es una estructura para mantener colecciones de datos.

2

Porque Map tiene tres colecciones: claves, valores y pares clave-valor.

No es fácil decidir cuál debe ser el valor por defecto para repetir, por lo que implementa la interfaz en tres ocasiones (keySet(), values() y entrySet())

2

Es parte de la infraestructura de recogida pero no implementa la java.util.Collection interfaz.

Es una rama diferente de la jerarquía. Si lo desea, puede verlo en el mismo nivel de la jerarquía que la interfaz de Colección.

La interfaz Colección está implementada por (es la raíz de) Colecciones similares a listas mientras Map está implementado por (es la raíz de) las colecciones similares a KEY-VALUE.

Cuestiones relacionadas