我今天遇到了一个方法,其签名如下:
def foo() : Future[_] = { /* some code */ }
我的问题是这里的返回类型是什么意思?这是否意味着此方法返回Future
并且我不关心计算的类型是什么?还是别的什么?
答案 0 :(得分:5)
Future[_]
- 类型只是the placeholder syntax for existential type:
Future[X] forSome { type X }
这样
def foo(): (Future[X] forSome { type X }) = { /* some code */ }
表示:foo
返回Future
,其值为某种未知类型X
。所以,你的解释
"这个方法返回一个Future,我不在乎计算的类型是什么"
是对的。