Java 8Optional类型与Kotlin可空类型使用对比

Java8 的Optional类型和 Kotlin 的可空类型,其实都在干一件事——对付null。Java 那边用Optional包装值,再配合orElseifPresent之类的方法来兜底,虽然安全,但写起来有点啰嗦。

Kotlin 就比较爽了,原生支持可空类型,用??:这种组合,一行就搞定空值判断。像下面这段代码:

fun strLength(s: String?): Int {
  return s?.length ?: 0
}

直接等价于 Java 里的Optional那套逻辑,简洁多了。两种写法对比着看,哪个更顺手一目了然。

如果你正在从 Java 转 Kotlin,这篇对比文还挺有的,里面的代码例子清晰直观,能帮你快速理清两个语言在可空类型上的差异。

pdf 文件大小:45.69KB