将布尔值映射到Clojure中的列表

时间:2020-09-30 20:07:30

标签: clojure functional-programming

我正在尝试获取一个列表,以针对特定数字评估是非。当我定义函数时,clojure会很好地定义它。但这不是我想做的。只是学习clojure ...所以我对语法还不太满意...如果这是一个菜鸟问题,我深表歉意。

理想情况下,它将采用(list 9 0 3)这样的列表并将其评估为(list true false true)

(defn myfunc [lst](map (> x 1) lst))

1 个答案:

答案 0 :(得分:1)

这是正确的语法:

(defn greater-than-one?
  [x]
  (< 1 x))

然后使用它:

(mapv greater-than-one? (list 9 0 3)) => [true false true]

以您的原始格式,您也可以像这样解决它:

(defn myfunc [lst]
  (map #(> % 1) lst))

并使用它:

(myfunc (list 9 0 3)) => (true false true)

您可能会发现this template project对入门很有帮助。请确保也see the list of documentation