Scala Option的isDefined和nonEmpty方法之间的区别

WoL*_*NeR 24 scala

在Scala Option中,isDefined和nonEmpty方法有什么区别?这两者之间有任何性能差异吗?

Lee*_*Lee 24

看一下来源,定义nonEmpty是:

final def nonEmpty = isDefined

  • @Kigyo - 这就是`isDefined`的定义,但问题是关于`nonEmpty`和`isDefined`之间的关系. (2认同)

Joh*_*nny 7

Scala 2.13.x代码库来看,它是:

def isDefined: Boolean = !isEmpty
...
final def nonEmpty = isDefined
Run Code Online (Sandbox Code Playgroud)

所以,从逻辑上讲,两者没有区别。