请在 2024 年 Clojure 调查问卷 中分享您的想法!

欢迎!请参阅 关于 页面了解有关此信息的一些更多信息。

0
Clojure

Kotlin 中有一个 '?' 操作符,可以用来处理可空类型

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 要么是整数,要么为空。如果它为空,则 length_or_zero 是字符串的长度或 0prefixed_nullable 取决于它是否为空,要么为空,要么是带有前缀的原始字符串。

这是 clojure 处理 nil 的功能的等价物是什么?

1 个答案

+2

可能是 some->some->>

(some-> "foo" (.length)) ;;=> 3
(some-> nil (.length)) ;;=> nil
将 `.length` 和 `.-length` 包围在括号中是可选的。
by
这是真的,谢谢你添加这个
...