【发布时间】:2012-02-20 15:14:29
【问题描述】:
我有一个函数想要根据优先顺序从地图中提取一个值。目前我正在将它作为一个嵌套的 if 结构来做,这太可怕了。我必须相信有更好的方法。
虽然这可行,但有更好的方法吗?
(defn filter-relatives [relatives]
(if(contains? relatives :self)
(relatives :self)
(if(contains? relatives :north)
(relatives :north)
(if(contains? relatives :west)
(relatives :west)
(if(contains? relatives :east)
(relatives :east)
(relatives :south)
)
)
)
)
)
)
)
【问题讨论】:
标签: map filter clojure conditional