Scala 定义一个结合其他一阶函数的一阶函数

Scala 定义一个结合其他一阶函数的一阶函数,scala,Scala,我有这个班MyClass: abstract class MyClass { def myMethod: A => B } object MyClass { def apply(dep: A => B)(f: B => B) = new MyClass{ def myMethod = ????? } } 在apply方法中,我想定义myMethod,它结合了f和dep函数,如f(dep)。我如何才能做到这一点?您可以使用myMethod的以下定义来做到这一点: def

我有这个班
MyClass

abstract class MyClass { def myMethod: A => B }

object MyClass { 
  def apply(dep: A => B)(f: B => B) = new MyClass{ def myMethod = ????? }
}

apply
方法中,我想定义
myMethod
,它结合了
f
dep
函数,如
f(dep)
。我如何才能做到这一点?

您可以使用myMethod的以下定义来做到这一点:

def myMethod = dep andThen f
或者,或者(但等效):

def myMethod = f compose dep