功能平等如何在Scala中运行?

Dra*_*orn 2 scala

如何为"函数"类型定义equals函数:

val javaVersion = () => sys.props("java.version")

val anonfun0 = new Function0[String] {
  def apply(): String = sys.props("java.version")
}

assert(javaVersion() == anonfun0()) // This works!
Run Code Online (Sandbox Code Playgroud)

dre*_*xin 7

它的工作原理是因为您要比较结果而不是功能.删除(),它应该返回false.