¿Cuál es la diferencia entre conjunto y mapa?

los diferencia principal entre Set y Map es que Set es un subtipo de interfaz de colección, mientras que Map no es un subtipo de interfaz de colección.

Una matriz almacena los datos del mismo tipo. Pero, después de crear una matriz, no es posible cambiarla. Los lenguajes de programación como Java proporcionan colecciones para almacenar datos dinámicamente. Permite almacenar múltiples objetos como un solo grupo. Además, es posible realizar operaciones como ordenar, buscar, insertar y eliminar en una colección. La interfaz base para implementar colecciones en Java se llama Collection. Hay varias interfaces que extienden la interfaz de colección. Uno de ellos es Set interface. Por otro lado, Map no extiende la interfaz de Colección ya que es una interfaz separada.

Áreas clave cubiertas

1. Lo que se establece
     - Definición, Funcionalidad
2. Que es map
     - Definición, Funcionalidad
3. ¿Cuál es la diferencia entre conjunto y mapa?
     - Comparación de diferencias clave

Términos clave

Java, Mapa, Conjunto

Lo que se establece

Set es una interfaz que amplía la interfaz de colección. No puede contener valores duplicados. HashSet y TreeSet implementan el Set. La interfaz de conjunto proporciona métodos como agregar, tamaño, etc. para realizar operaciones en la colección. Un ejemplo es el siguiente.

Figura 1: Programa con HashSet

El HashSet es un objeto de tipo Set. Puede almacenar cuerdas. El método add se usa para insertar elementos en HashSet. Aunque hay dos cadenas como “manzana”, solo hay una manzana en la salida. Por lo tanto, no muestra los elementos que ya existen en el Conjunto. Además, imprime el conjunto como una lista desordenada. El método de tamaño da el número de elementos en el conjunto.

Consulte otro ejemplo de la siguiente manera.

Figura 2: Programa con TreeSet

El conjunto de árboles es un objeto de tipo Conjunto que puede almacenar cadenas. El método add se usa para insertar elementos en un conjunto de árboles. Aunque hay dos cadenas como “manzana”, solo hay una manzana en la salida. Por lo tanto, sólo muestra los elementos únicos. Además, imprime el conjunto como una lista ordenada. El método de tamaño da el número de elementos en el conjunto.

Que es map

El mapa es una interfaz que representa una asignación entre una clave y un valor. No amplía la interfaz de Colección. Por lo tanto, el comportamiento del mapa es diferente de los tipos de colección habituales. Un Mapa no puede contener claves duplicadas, y cada clave puede asignarse como máximo a un valor. HashMap implementa la interfaz de Map mientras que SortedMap extiende la interfaz de Map y TreeMap implementa la interfaz de SortedMap.

Figura 3: Programa con HashMap

La lista de estudiantes es un objeto de tipo Mapa. Puede almacenar cuerdas. El método put se utiliza para insertar elementos en studentList. Hay dos registros en "Peter" pero solo mostrará un registro. HashMap no mantiene el pedido insertado. Solo imprime los valores únicos..

Figura 4: Programa con TreeMap

Letras es un objeto de tipo Mapa. Puede almacenar cuerdas. El método put se utiliza para insertar elementos a las letras. Hay dos registros en "B", pero solo mostrará un registro. TreeMap no mantiene el orden insertado. Solo imprime los valores únicos..

Diferencia entre conjunto y mapa

Definición

Un Conjunto es una interfaz en la jerarquía de Colección que no puede contener elementos duplicados, mientras que un Mapa es una interfaz que asigna claves únicas a valores. Esta es la principal diferencia entre Set y Map..

Asociación con la interfaz de colección

Set es una interfaz que extiende la interfaz de Colección mientras que Map es una interfaz separada.

Funcionalidad

La funcionalidad es también una gran diferencia entre Set y Map. El conjunto ayuda a almacenar valores únicos, mientras que la interfaz del mapa representa una asignación entre una clave y un valor.

Conclusión

La principal diferencia entre Set y Map es que Set es un subtipo de interfaz de colección, mientras que Map no es un subtipo de interfaz de colección.

Referencia:

1. "Set in Java". GeeksforGeeks, 26 de noviembre de 2018, disponible aquí.
2. “Map Interface in Java”. GeeksforGeeks, 26 de noviembre de 2018, disponible aquí.