我希望有一种方法可以为Scala中的函数定义类型.
例如,假设我想要一个需要两个Ints并返回一个布尔值的函数,我可以定义一个使用它的函数:
def checkInts(f: (Int,Int) => Boolean) = {
// do stuff
}
Run Code Online (Sandbox Code Playgroud)
有没有办法定义f的类型?然后我可以这样做:
def checkInts(f: MyFunctionType)
Run Code Online (Sandbox Code Playgroud)
要么
def checkInts(f: Option[MyFunctionType])
Run Code Online (Sandbox Code Playgroud)
Mit*_*ins 46
trait Foo {
type MyFunction = (Int,Int) => Boolean
def checkInts(f: MyFunction)
def checkInts(f: Option[MyFunction])
}
Run Code Online (Sandbox Code Playgroud)