我需要将两个 Future[List] 合二为一,我想出了以下解决方案:
def mergeFutureLists[X]( fl1: Future[List[X]], fl2: Future[List[X]] ): Future[List[X]] =
{
val lf = List( fl1, fl2 )
val fll = Future.sequence( lf )
return fll.map{ x => x.flatMap{ el => el } }
}
它做我想要的,但这是正确的方法吗?
请您参考如下方法:
您可以等待结果,然后将它们组合成一个列表:
def mergeFutureLists[X]( fl1: Future[List[X]], fl2: Future[List[X]] ) = {
for{
f1Res <- fl1
f2Res <- fl2
} yield (f1Res ::: f2Res)
}




