【发布时间】:2025-12-07 11:35:01
【问题描述】:
例如我们有函数:
(defn my-fun [param]
(let [[x _] param]
x))
为什么我们在这个例子中使用“_”?
【问题讨论】:
标签: clojure
例如我们有函数:
(defn my-fun [param]
(let [[x _] param]
x))
为什么我们在这个例子中使用“_”?
【问题讨论】:
标签: clojure
(let [[x _] [1 2]] x) 解构序列的第一个元素并将其绑定到名称x。它还将第二个值绑定到名称_,但按照惯例,此名称意味着可以忽略该值。
请注意,(let [[x _] [1 2]] [x _]) 在技术上是有效的 Clojure,但_ 的语义是我们只是不关心该值。从编译器的角度来看,该符号没有特殊处理,只是人类约定。
【讨论】: