2024 年 Clojure 状态调查!中分享您的想法。

欢迎!请查看关于页面以获取更多关于如何进行的信息。

0
Clojure

Kotlin 有一个 '?' 操作符,可以用来处理可为 null 的类型

fun f(nullable: String?) {
  val nullable_length = nullable?.length;
  val length_or_zero = nullable_length ?: 0;
  val prefixed_nullable = nullable?.let {
    "prefix_" + it
  }
}

这里,nullable_length 可以是整数或 null。 length_or_zero 是字符串的长度,如果它是 null,则为 0prefixed_nullable 根据是否为 null,可以是 null 或带有前缀的原始字符串。

对于处理 nil 的这个功能,Clojure 中有什么等价物?

1 个答案

+2

编辑

可能是指 some->some->>

(some-> "foo" (.length)) ;;=> 3
(some-> nil (.length)) ;;=> nil
`.length` 和 `.-length` 周围的括号是可选的。
by
的确如此,感谢您的补充。
...