在Clojure中使用整数键向量查找地图中的值

时间:2014-02-14 16:27:13

标签: vector map clojure key-value

我有这样的地图:

(def my-map {43423 43.3, 63452 32.02, 823828 67.43, ...})

以及不同顺序的键向量:

(def my-keys [63452 823828 43423 ...])

如何在my-map上调用my-keys向量来提取值并保持向量的顺序,如下所示?

;=> [32.02 67.43 43.3 ...] 

只要维护订单,任何返回的数据类型都可以。

1 个答案:

答案 0 :(得分:5)

使用map

(map my-map my-keys)
;=> (32.02 67.43 43.3)

这是有效的,因为{} map通过查找参数来实现函数接口。

({:foo 1 :bar 2} :bar)
;=> 2