Clojure Maps merge-with

2018-09-28 16:27 更新

返回一個映射,其中包含第一個映射的其余映射。如果一個鍵出現(xiàn)在多個映射中, 則后者的映射 (從左向右) 將與結(jié)果中的映射組合在一起。

語法

以下是語法。

(merge-with f hmap1 hmap2)

參數(shù) - 'f'是需要應(yīng)用于哈希映射的運算符。'hmap1'是哈希鍵和值的映射。'hmap2'是哈希鍵和值的映射,需要使用第一個HashMap進行映射。

返回值 - 返回由第一個映射結(jié)合的其余映射組成的映射。

例子

以下是Clojure中的merge-with的例子。

(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)

輸出

上述代碼輸出以下結(jié)果。

{z 1, a 5, i 7, b 2, h 5}

請注意,在輸出中,由于鍵“a”出現(xiàn)兩次,所以根據(jù)運算符+從HashMaps添加該值。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號