2

関数型を受け入れる 2 つの関数があります:Int => Boolean関数型

def myFunction1(f1: Int => Boolean) ...
def myFunction2(f2: Int => Boolean) ...

function1 から function2 を呼び出したいのですが、単に f1 で呼び出すのではなく、f1 の逆関数で呼び出したいと考えています。したがって、f1が次のようなものである場合

(x: Int) => x > 4

つまり、4 より大きい数に対して true を返します。数値が 4 より大きい場合は、逆に false を返します。myFunction2 を呼び出す前に f1 を逆にすることは可能ですか?

4

2 に答える 2

3

次のようなことができます。

def myFunction1(f1: Int => Boolean) =  myFunction2(!f1(_))
于 2013-04-05T21:29:09.087 に答える
1
def myFunction1(f1: Int => Boolean) =  myFunction2(f1 andThen (! _))
于 2013-04-05T21:54:37.237 に答える