Devuelve un mapa que consta del resto de los mapas conjugados con el primero. Si una clave aparece en más de un mapa, el mapa o mapas de este último (de izquierda a derecha) se combinarán con el mapa en el resultado.
Sintaxis
A continuación se muestra la sintaxis.
(merge-with f hmap1 hmap2)
Parameters- 'f' es el operador que debe aplicarse a los mapas hash. 'hmap1' es el mapa de claves y valores hash. 'hmap2' es el mapa de claves y valores hash, que debe asignarse con el primer HashMap.
Return Value - Devuelve un mapa que consta del resto de los mapas conjugados con el primero.
Ejemplo
A continuación se muestra un ejemplo de fusión con en Clojure.
(ns clojure.examples.example
(:gen-class))
(defn example []
(def demokeys (hash-map "z" 1 "b" 2 "a" 3))
(def demokeys1 (hash-map "a" 2 "h" 5 "i" 7))
(println (merge-with + demokeys demokeys1)))
(example)
Salida
El código anterior produce la siguiente salida.
{z 1, a 5, i 7, b 2, h 5}
Observe que en la salida, dado que la clave 'a' aparece dos veces, el valor se agrega de ambos HashMaps según el operador +.