说我们有:
val listOfYetToBeMaybePeople = List[Future[Option[Person]]]
如果所有元素都具有
Future[Boolean]
或true
(如果至少一个是Some(Person)
),是否有一种非阻塞的方式来获取false
的None
? 最佳答案
试试这个:
val listOfYetToBeMaybePeople: List[Future[Option[Person]]] =
val allExist: Future[Boolean] =
Future.sequence(listOfYetToBeMaybePeople).map(_.forall(_.nonEmpty))
说明:
sequence
将List
的Future
转换为列表forall
检查列表nonEmpty
检查Option
是否实际上是Some
。 如果所有人都存在,则返回带有
true
的future。关于scala - 如何检查Future列表中是否不存在[Option],我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48891122/