我有以下代码:
val futureWithResult = for{files <- scanFiles(dir)
res <- procFiles(files)}yield res
res的类型为Future[...]
,为什么此语句返回Future[Future[..]]
?
在我的程序中,我需要futureWithResult为Future[...]
。为什么我的yield代码将res类型包装到另一个Future[]
?
答案 0 :(得分:0)
我找到了答案。问题确实在错误的类型(确切地说,与res的类型)。它是Future[Seq[(String, Int)]]
而不是Seq[(String, Int)]
问题是我错误地将procFiles(它将Future [...])包装到另一个Future中。感谢所有人的评论!