Это техника создания третьей функции, которая возврщает результат путем передачи результата одной функции в параметр другой.
Вот пример с использованием метода compose:
Есть еще другой метод, который применяет функции наоборот, andThen:
Вот пример с использованием метода compose:
scala> def f(s: String) = "f(" + s + ")"
f: (String)java.lang.String
scala> def g(s: String) = "g(" + s + ")"
g: (String)java.lang.String
scala> val fComposeG = f _ compose g _
fComposeG: (String) => java.lang.String = <function>
scala> fComposeG("yay")
res0: java.lang.String = f(g(yay))
Есть еще другой метод, который применяет функции наоборот, andThen:
scala> val fAndThenG = f _ andThen g _ fAndThenG: (String) => java.lang.String =scala> fAndThenG("yay") res1: java.lang.String = g(f(yay))
Комментариев нет:
Отправить комментарий