展平Scala的List + Future

BZa*_*per 2 collections scala future

我正试图等待这样一个时髦的结构:Future[List[Future[List[Object]]]].等待只摆脱最外层的未来,是否有一种简洁的方式将其修剪为简单List[Object]

Jea*_*art 9

使用Future.sequence:

val original: Future[List[Future[List[Object]]]] = // ...

val futureList = 
  original.flatMap(l => Future.sequence(l)) // Future[List[List[Object]]]
    .map(_.flatten)                         // Future[List[Object]]
Run Code Online (Sandbox Code Playgroud)