Scala 从 Future[Seq[T]] 提取值到 Future[T]

Scala extract value from Future[Seq[T]] into Future[T]

对于给定的Seq包裹Future中,例如

import scala.concurrent._
import ExecutionContext.Implicits.global

val xs = Future { Seq(1,2,3) }

如何将集合中的第一个(只有一个)值提取到另一个Future,即

Future { 1 }
val xs = Future { Seq(1,2,3) }
val x = xs.map(_.head)

x 将是另一个 Future,并且 xs 仍然可用,因此您可以用它做任何事情。